summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2021-05-18 01:57:05 -0300
committerJesusaves <cpntb1@ymail.com>2021-05-18 01:57:05 -0300
commit3cd5d54bb447f328603b04623330b98c5033a405 (patch)
tree36273c39b1e37a07f8688338d5f6a61eb5062b53
parent2f0ff13b48429c3f1ec28cb12cff1b75ca8e59cb (diff)
downloadrenpy-3cd5d54bb447f328603b04623330b98c5033a405.tar.gz
renpy-3cd5d54bb447f328603b04623330b98c5033a405.tar.bz2
renpy-3cd5d54bb447f328603b04623330b98c5033a405.tar.xz
renpy-3cd5d54bb447f328603b04623330b98c5033a405.zip
Move Soul-Level stuff to its own file
-rw-r--r--game/renpy.rpy189
-rw-r--r--game/soul.rpy200
2 files changed, 200 insertions, 189 deletions
diff --git a/game/renpy.rpy b/game/renpy.rpy
index 85f556c..7ed9963 100644
--- a/game/renpy.rpy
+++ b/game/renpy.rpy
@@ -56,69 +56,6 @@ screen serverdata(server):
null width 20
text _("{a=%s}Terms of Use{/a}" % persistent.serverlist[server]["Policy"])
-screen souldata():
- zorder 100
- if mySoul is not None:
- fixed:
- frame:
- background Frame("images/default.png", 0, 0)
- xalign 0.5
- yalign 0.5
- xminimum 0.85
- xmaximum 0.85
- yminimum 0.8
- ymaximum 0.8
- hbox:
- null width 320
- null width 40
- vbox:
- null height 20
- label "{b}{color=#FFF}%s{/color}{/b}" % mySoul["name"]
- null height 20
- hbox:
- label "{color=#FFF}0{/color}"
- null width 20
- bar:
- value mySoul["exp"]
- range mySoul["next"]
- xmaximum 0.5
- null width 20
- label "{color=#FFF}%d{/color}" % mySoul["next"]
- null height 30
- hbox:
- label "{color=#FFF}%s %d{/color}" % (_("Level"), mySoul["level"])
- #button Level up
- null height 30
- ## TODO: Other stuff
- null height 30
- label "{color=#FFF}%s{/color}" % _("Scene Recollection")
- vpgrid:
- cols 2
- spacing 5
- draggable True
- mousewheel True
- scrollbars "vertical"
- side_xalign 0.5
- if mySoul["level"] >= 0:
- textbutton _("Prologue"):
- background Frame("gui/frame.png", 0, 0)
- xysize (200, 40)
- action Return("intro")
- tooltip _("Replay the prologue.")
- frame:
- yalign 0.9
- xalign 0.9
- xmaximum 240
- button:
- xmaximum 240
- ymaximum 40
- action Return(None)
- fixed:
- #add Frame("gui/button/choice_hover_background.png", 0, 0)
- text _("Return »"):
- color "#000"
- xalign 0.5
- yalign 0.5
# The game starts here.
label start:
@@ -234,129 +171,3 @@ label start_loop:
# 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
-
-#################################################################################
-label thevoid:
- $ progress = 0
- $ mySoul = None
- $ renpy.invoke_in_thread(load_souldata)
- scene DKBG
- show expression (ManaSparkle().sm) as flare
- with Dissolve(1.0)
- # Block the main thread until the socket connection is done
- show expression Text(_("{color=#FFF}Loading user data...{/color}")) at truecenter as loader
- with None
- python:
- while progress < 100:
- if responsive:
- sdelay()
- else:
- break
- hide loader with None
- if mySoul is not None:
- ## Setup
- python:
- if persistent.steam and steam.initialized:
- mySoul["name"] = steam.get_persona_name()
- else:
- mySoul["name"] = _("Wanderer")
- ## Loop
- $ loop = True
- while loop:
- call screen souldata()
- if isinstance(_return, str):
- $ renpy.call_in_new_context(_return)
- else:
- $ loop = False
- $ del loop
- scene black with Dissolve(1.5)
- pause 0.15
- return
-
diff --git a/game/soul.rpy b/game/soul.rpy
new file mode 100644
index 0000000..9b2003b
--- /dev/null
+++ b/game/soul.rpy
@@ -0,0 +1,200 @@
+#################################################################################
+# This file is part of Mana Launcher.
+# Copyright (C) 2021 Jesusalva <jesusalva@tmw2.org>
+#
+# Distributed under the MIT license, except for Steam parts.
+#################################################################################
+screen souldata():
+ zorder 100
+ if mySoul is not None:
+ fixed:
+ frame:
+ background Frame("images/default.png", 0, 0)
+ xalign 0.5
+ yalign 0.5
+ xminimum 0.85
+ xmaximum 0.85
+ yminimum 0.8
+ ymaximum 0.8
+ hbox:
+ null width 320
+ null width 40
+ vbox:
+ null height 20
+ label "{b}{color=#FFF}%s{/color}{/b}" % mySoul["name"]
+ null height 20
+ hbox:
+ label "{color=#FFF}0{/color}"
+ null width 20
+ bar:
+ value mySoul["exp"]
+ range mySoul["next"]
+ xmaximum 0.5
+ null width 20
+ label "{color=#FFF}%d{/color}" % mySoul["next"]
+ null height 30
+ hbox:
+ label "{color=#FFF}%s %d{/color}" % (_("Level"), mySoul["level"])
+ #button Level up
+ null height 30
+ ## TODO: Other stuff
+ null height 30
+ label "{color=#FFF}%s{/color}" % _("Scene Recollection")
+ vpgrid:
+ cols 2
+ spacing 5
+ draggable True
+ mousewheel True
+ scrollbars "vertical"
+ side_xalign 0.5
+ if mySoul["level"] >= 0:
+ textbutton _("Prologue"):
+ background Frame("gui/frame.png", 0, 0)
+ xysize (200, 40)
+ action Return("intro")
+ tooltip _("Replay the prologue.")
+ frame:
+ yalign 0.9
+ xalign 0.9
+ xmaximum 240
+ button:
+ xmaximum 240
+ ymaximum 40
+ action Return(None)
+ fixed:
+ #add Frame("gui/button/choice_hover_background.png", 0, 0)
+ text _("Return »"):
+ color "#000"
+ xalign 0.5
+ yalign 0.5
+
+
+
+#################################################################################
+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 thevoid:
+ $ progress = 0
+ $ mySoul = None
+ $ renpy.invoke_in_thread(load_souldata)
+ scene DKBG
+ show expression (ManaSparkle().sm) as flare
+ with Dissolve(1.0)
+ # Block the main thread until the socket connection is done
+ show expression Text(_("{color=#FFF}Loading user data...{/color}")) at truecenter as loader
+ with None
+ python:
+ while progress < 100:
+ if responsive:
+ sdelay()
+ else:
+ break
+ hide loader with None
+ if mySoul is not None:
+ ## Setup
+ python:
+ if persistent.steam and steam.initialized:
+ mySoul["name"] = steam.get_persona_name()
+ else:
+ mySoul["name"] = _("Wanderer")
+ ## Loop
+ $ loop = True
+ while loop:
+ call screen souldata()
+ if isinstance(_return, str):
+ $ renpy.call_in_new_context(_return)
+ else:
+ $ loop = False
+ $ del loop
+ scene black with Dissolve(1.5)
+ pause 0.15
+ return
+
+#################################################################################
+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
+