summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-05-17 21:09:51 -0300
committerJesusaves <cpntb1@ymail.com>2021-05-17 21:09:51 -0300
commit35d4fdcab02925c8e5c65f47a34e8063c34b66b0 (patch)
tree7f44df85e03ecf72d3445759802433d23182be0e
parent840973bf2ade7659bfdc79bf8bcb1c3de7dc6a78 (diff)
downloadrenpy-35d4fdcab02925c8e5c65f47a34e8063c34b66b0.tar.gz
renpy-35d4fdcab02925c8e5c65f47a34e8063c34b66b0.tar.bz2
renpy-35d4fdcab02925c8e5c65f47a34e8063c34b66b0.tar.xz
renpy-35d4fdcab02925c8e5c65f47a34e8063c34b66b0.zip
Mirror Lake introduction cutscene.
The images are licensed under CC0, but mirrorlake.png contains trademarks.
-rw-r--r--game/images/EnBallBlue.pngbin0 -> 8969 bytes
-rw-r--r--game/images/darkshadow.pngbin0 -> 24695 bytes
-rw-r--r--game/images/mirrorlake.pngbin0 -> 61885 bytes
-rw-r--r--game/mirrorlake.rpy11
-rw-r--r--game/renpy.rpy96
5 files changed, 107 insertions, 0 deletions
diff --git a/game/images/EnBallBlue.png b/game/images/EnBallBlue.png
new file mode 100644
index 0000000..bdcfc18
--- /dev/null
+++ b/game/images/EnBallBlue.png
Binary files differ
diff --git a/game/images/darkshadow.png b/game/images/darkshadow.png
new file mode 100644
index 0000000..d3ccb86
--- /dev/null
+++ b/game/images/darkshadow.png
Binary files differ
diff --git a/game/images/mirrorlake.png b/game/images/mirrorlake.png
new file mode 100644
index 0000000..98be78c
--- /dev/null
+++ b/game/images/mirrorlake.png
Binary files differ
diff --git a/game/mirrorlake.rpy b/game/mirrorlake.rpy
index d7e69ea..1c8da88 100644
--- a/game/mirrorlake.rpy
+++ b/game/mirrorlake.rpy
@@ -22,6 +22,17 @@ screen mirrorlake():
ymaximum 650
yminimum 650
vbox:
+ #button:
+ # action SetScreenVariable("server", None)
+ # fixed:
+ # xmaximum 320
+ # ymaximum 40
+ # xalign 0.5
+ # add Frame("gui/button/choice_hover_background.png", 0, 0)
+ # text _("{b}The Void{/b}"):
+ # color "#F2F"
+ # xalign 0.5
+ # yalign 0.5
for (idx, srv) in enumerate(persistent.serverlist):
button:
action SetScreenVariable("server", idx)
diff --git a/game/renpy.rpy b/game/renpy.rpy
index 17fbae2..6ab5eaf 100644
--- a/game/renpy.rpy
+++ b/game/renpy.rpy
@@ -6,6 +6,10 @@
#################################################################################
image TMW2 = "images/TMW2.png"
+image MLP = "images/mirrorlake.png"
+image DKSD = "images/darkshadow.png"
+image DKBG = "#210"
+define evil = Character("???", color="#f00")
screen loading():
zorder 100
@@ -78,6 +82,10 @@ label start:
# Open game
hide screen loading
scene black
+ if persistent.vaultId is None or persistent.vaultId != vaultId:
+ $ persistent.vaultId = vaultId
+ call intro
+ scene black with None
show TMW2 at truecenter
with Dissolve(0.5)
pause 1.0
@@ -125,3 +133,91 @@ label start:
# Will never reach this line
return
+#################################################################################
+init python:
+ class ManaSparkle(object):
+ def __init__(self, spd=25, multi=True):
+ self.sm = SpriteManager(update=self.update)
+ self.items = [ ]
+ if multi:
+ d = Transform("images/EnBallBlue.png", zoom=.05)
+ for i in range(0, 80):
+ self.add(d, renpy.random.randint(spd, spd*2))
+ d = Transform("images/EnBallBlue.png", zoom=.10)
+ for i in range(0, 45):
+ self.add(d, renpy.random.randint(spd, spd*2))
+ d = Transform("images/EnBallBlue.png", zoom=.25)
+ for i in range(0, 10):
+ self.add(d, renpy.random.randint(spd, spd*2))
+ d = Transform("images/EnBallBlue.png", zoom=.40)
+ for i in range(0, 5):
+ self.add(d, renpy.random.randint(spd, spd*2))
+ def add(self, d, speed):
+ s = self.sm.create(d)
+ startx = renpy.random.randint(0, 1200)
+ starty = renpy.random.randint(400, 720)
+ vect = renpy.random.randint(0, 4)
+ self.items.append((s, startx, starty, vect, speed))
+ def update(self, st):
+ for s, startx, starty, vect, speed in self.items:
+ if vect % 2 == 0:
+ s.x = (startx + speed * st) % 1300
+ else:
+ s.x = (startx - speed * st) % 1300
+ if vect % 2 == 1:
+ s.y = (starty - speed * st) % 800
+ else:
+ s.y = (starty + speed * st) % 800
+ return 0
+label intro:
+ $ RPCUpdate("The Void", "launcher")
+ scene DKBG
+ show expression (ManaSparkle().sm) as flare
+ show DKSD at left
+ with Dissolve(1.0)
+ evil "{cps=80}Look at this... All this mana... Doesn't it look peaceful?{/cps}"
+ evil "{cps=80}What do you think that would happen if I mess with it... like this?!{/cps}{nw}"
+ hide flare
+ show expression (ManaSparkle(spd=100).sm) as flare behind DKSD
+ with None
+ evil "What do you think that would happen if I mess with it... like this?!{fast}{nw}" with vpunch
+ evil "What do you think that would happen if I mess with it... like this?!{fast}{nw}" with hpunch
+ evil "What do you think that would happen if I mess with it... like this?!{fast}{nw}" with vpunch
+ evil "What do you think that would happen if I mess with it... like this?!{fast}" with hpunch
+ evil "{cps=80}...What? No, you cannot stop me.{/cps}"
+ evil "{i}*evil grin*{/i} {cps=80}Hey, let's play a game.{/cps}"
+ evil "{cps=80}I'll shatter your Soul and I want see if you can catch me!{/cps}"
+ evil "{cps=80}HAHAHAHAHAHA--{/cps}{w=.5}{nw}"
+ hide flare with dissolve
+ show black behind DKSD with dissolve
+ scene black with None # fade out to black
+ evil "HAHAHAHAHAHA{fast}{cps=80}HAHAHAHAHAHAHAH!{/cps}"
+ window hide
+ show MLP at truecenter with Dissolve(1.0) # TODO: Locale
+ pause 2.5
+ scene black with Dissolve(1.0)
+ show expression (ManaSparkle(spd=10, multi=False).sm) as flare
+ with Dissolve(5.0)
+ centered "{color=#fff}{cps=80}Having your soul shattered to pieces, you drift along the void...{p=1.5}\n\
+Your soul was shattered, your memories forfeit, but your willpower remained.{p=1.5}\n\
+That's right - You have a task to do, a mission to accomplish.{p=1.5}\n\
+\"This is not the end.\" You think to yourself.{p=1.5}\n\
+So, you dive in the Mirror Lake, allowing your willpower to become part of the worlds which came to be...{/cps}{/color}"
+ window hide
+ pause 0.5
+ hide flare with dissolve
+ centered "{color=#fff}{b}Tutorial{/b}\n\n\
+In the next screen, you'll be at the Mirror Lake Interface.\nThe worlds are listed to the left, and a description is available at right.\n\
+Select any world, and allow your willpower to take form on the world, as one of its inhabitants.\n\
+Each world is different from each other, there is no consistency on gameplay rules, art style or history.\n\
+\n\
+And eventually, your power shall return to you...{/color}{fast}"
+ centered "{color=#f35}{b}DISCLAIMER{/b}\n\n\
+{color=#fff}The worlds may be operated by different staff, and are in an eternal mutation state.\n\
+Be sure to read each subworld specific rules and complete the tutorial to spot the differences!\n\
+\n\
+Attempt to restore your soul as you try to stop the evil which threatens the multiverse.\n\
+Soul Level remains constant regardless of the subworld you're at.{/color}{fast}"
+ scene black
+ return
+