diff --git a/game/achievements.rpy b/game/achievements.rpy index 1689898..7006e98 100644 --- a/game/achievements.rpy +++ b/game/achievements.rpy @@ -299,7 +299,7 @@ screen achievement_popup(a, tag, num): ## its dimensions. fit "contain" ysize 95 align (0.5, 0.5) vbox: - text a.name + text a.name size 100 text a.description size 100 ## Hide the screen after 5 seconds. You can change the time but shouldn't @@ -398,8 +398,8 @@ screen ending_gallery(): # else: # null width -10 vbox: - label a.name - text a.description + text a.name size 100 + text a.description size 100 # if a.has(): # ## There are two ways to display the timestamp. The # ## first is automatically formatted like diff --git a/game/images/alice surprised.png b/game/images/alice surprise.png similarity index 100% rename from game/images/alice surprised.png rename to game/images/alice surprise.png diff --git a/game/images/chill.png b/game/images/chill.png deleted file mode 100644 index a261264..0000000 Binary files a/game/images/chill.png and /dev/null differ diff --git a/game/images/chills.png b/game/images/chills.png new file mode 100644 index 0000000..fa9cc78 Binary files /dev/null and b/game/images/chills.png differ diff --git a/game/script.rpy b/game/script.rpy index 5616d0e..eafdc25 100644 --- a/game/script.rpy +++ b/game/script.rpy @@ -38,6 +38,15 @@ transform damaged: ease .02 xoffset -2 ease .01 xoffset 0 +transform thrown_offscreen: + ease .5 xoffset 100 yoffset -100 + ease .4 xoffset 200 yoffset -200 + ease .3 xoffset 400 yoffset -400 + ease .3 xoffset 800 yoffset -800 + ease .2 xoffset 1600 yoffset -1600 + ease .2 xoffset 3200 yoffset -3200 + ease .1 xoffset 6400 yoffset -6400 + transform idle_vertical: yoffset 0 ease 0.06 @@ -124,6 +133,82 @@ transform idle_horizontal: ease 0.04 repeat +transform spin: + around (.5, .5) + alignaround (.5, .5) xalign .5 yalign .5 + rotate 0 + linear 1 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.75 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.5 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.25 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + + around (.5, .5) + alignaround (.5, .5) + rotate 0 + linear 0.125 rotate 360 + # TODO: List all needed expressions python: """ @@ -211,10 +296,78 @@ image reimu surprise: "reimu surprise.png" function SpriteFocus('reimu') +image yumemi disguise: + "yumemi disguise.png" + function SpriteFocus('yumemi') + +image yumemi glasses: + "yumemi glasses.png" + function SpriteFocus('yumemi') + image yumemi happy: "yumemi happy.png" function SpriteFocus('yumemi') +image yumemi neutral: + "yumemi neutral.png" + function SpriteFocus('yumemi') + +image yumemi serious: + "yumemi serious.png" + function SpriteFocus('yumemi') + +image yumemi wistful: + "yumemi wistful.png" + function SpriteFocus('yumemi') + +image marisa concerned: + "marisa concerned.png" + function SpriteFocus('marisa') + +image marisa defiant: + "marisa defiant.png" + function SpriteFocus('marisa') + +image marisa happy: + "marisa happy.png" + function SpriteFocus('marisa') + +image marisa laugh: + "marisa laugh.png" + function SpriteFocus('marisa') + +image marisa neutral: + "marisa neutral.png" + function SpriteFocus('marisa') + +image marisa serious: + "marisa serious.png" + function SpriteFocus('marisa') + +image marisa surprise: + "marisa surprise.png" + function SpriteFocus('marisa') + +image alice angry: + "alice angry.png" + function SpriteFocus('alice') + +image alice happy: + "alice happy.png" + function SpriteFocus('alice') + +image alice neutral: + "alice neutral.png" + function SpriteFocus('alice') + +image alice surprise: + "alice surprise.png" + function SpriteFocus('alice') + +image alice worried: + "alice worried.png" + function SpriteFocus('alice') + screen devModeButtons1(): grid 3 12: $ i = 0 @@ -376,14 +529,18 @@ label start: image audi_front: "bg auditorium front.png" + image yuuka_look: + "yuuka looking eyes.png" + + image chills: + "chills.png" + + show audi_front zorder 150 show bg auditorium back behind audi_front $ renpy.pause(2) - - image yuuka_look: - "yuuka looking eyes.png" show yuuka neutral behind yuuka_look with fade @@ -460,7 +617,7 @@ label start: $ renpy.pause(1.5) # play a wind sound - show yuuka neutral: + show yuuka irritated unmarked: ease 1.6 ypos 1080 yuuka "Sent by a scientist you say? I think I might know who this is." @@ -549,25 +706,61 @@ label start: yuuka "Always with the jokes." + show marisa laugh: + xalign 1.0 + yalign 0.5 + marisa "Can't help it when the situation's smelling funny." yuuka "You'd know about smelling funny, little miss thief." + show marisa surprise: + xalign 1.0 + yalign 0.5 + marisa "Thief? I can't believe you'd try to slander me like that!" + show marisa happy: + xalign 1.0 + yalign 0.5 + marisa "I prefer to be called Robin Hood." + show yuuka amused: + xalign 0.0 + yalign 0.5 + yuuka "Because you take from the rich and dress poor?" + show marisa surprise: + xalign 1.0 + yalign 0.5 + marisa "Ack! How you wound me." + show marisa happy: + xalign 1.0 + yalign 0.5 + marisa "Though given you were living it up in a mansion before, not wrong about the first half." + show yuuka irritated: + xalign 0.0 + yalign 0.5 + yuuka "Cut to chase, Marisa. I need to see that scientist friend of yours." + show marisa neutral: + xalign 1.0 + yalign 0.5 + marisa "Oh I'd tell you where Yumemi is, if I knew. But she's not here." - - yuuka "And I'm to believe you're not lying when you've lied about where you got your oh-so-original Master Spark from?" + + yuuka "And I'm to believe you're not lying when you've lied about who you got your oh-so-original Master Spark from?" + + show marisa serious: + xalign 1.0 + yalign 0.5 marisa "Uh, yeah. Because I'm not lying." @@ -575,11 +768,30 @@ label start: "Does Yuuka believe her?" "No, obviously.": + + show yuuka neutral: + xalign 0.0 + yalign 0.5 + yuuka "..." marisa "..." + show marisa neutral: + xalign 1.0 + yalign 0.5 + marisa "So does that mean..." + + show yuuka rage: + easeout_expo 1.0 xpos 2700 + yalign 0.5 + + $ renpy.pause(0.85, hard=True) + + show marisa surprise at spin, thrown_offscreen: + xalign 1.0 + yalign 0.5 yuuka "{i}Then I hit her really hard.{/i}" (cb_name="") @@ -591,16 +803,41 @@ label start: # TODO: kamehameha - yuuka "{i}Then I blasted her really hard.{nw=1.5}{/i}" (cb_name="") + show bg black with fade + + yuuka "{i}Then she was gone, just like that.{nw=2.5}{/i}" (cb_name="") + + hide bg black + scene bg entrance + + show yuuka happy: + xalign 0.0 + yalign 0.5 + + show marisa serious: + xalign 1.0 + yalign 0.5 yuuka "{i}Is what I want to say happened, but we do have spellcard rules for a reason.{/i}" (cb_name="") yuuka "Fine then. If you're not going to concede her, shall we duel?" + show marisa concerned: + xalign 1.0 + yalign 0.5 + marisa "Every spellcard duel begins with a misunderstanding, they say." + show marisa defiant: + xalign 1.0 + yalign 0.5 + marisa "I'm not gonna even try to explain myself then! Let the bullets do the talking!" + show yuuka irritated unmarked: + xalign 0.0 + yalign 0.5 + yuuka "Lets." # TODO: lots of blasty sfx and explosions