马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本帖最后由 leech 于 2025-3-2 05:45 编辑
先上缩略图
叠甲
基于个人需求写的一点小东西
写都写了,就把这盘九转大肠捧出来给大家品鉴一下
#使用的话希望能著一下我名Maz
#被您使用是我的荣幸(请狠狠的使用
#观前提示
由于本人对编程语言掌握的十分的水
所以基本都是由自己掌握的简单代码依靠逻辑堆叠而成的屎山,望轻喷
使用说明和思路会以注释写在代码里,即插即用
#这是一套的【屎山代码插件】猜球盅小游戏
https://www.renpy.cn/forum.php?mod=viewthread&tid=1574
(出处: RenPy中文空间)
[RenPy] 纯文本查看 复制代码 ### 迷你游戏2比大小 ####################################################
# 使用说明/必看
# 本系统由 Maz 用 屎山 编写
# 主要面向 renpy 新手用户进行定制化,基本由 renpy 简单代码编写完成
# 将系统模块化,即插即用,并内置使用说明
# 如果您嫌说明过长,仅需关注【】内的使用说明
# 注1 为了避免变量名冲突,此系统内变量名均为注释中()内汉字的拼音首字母+英文
# 注2 为了避免文件名冲突,系统包内文件均特殊命名化,请在使用前对文件名进行查重
# 注3 注释中【】内的注释为简单定制化操作的说明
# 注4 如果您使用的是ATOM文本编辑器,快捷键 ctrl+shift+alt+{ 收起全部缩进更方便您对本系统的查阅
# 注5 如果您使用的是VSC文本编辑器,快捷键 ctrl+K,ctrl+0 收起全部缩进更方便您对本系统的查阅
# 此游戏的思路是通过screen的交替形成动画
# 并用drag形成让玩家有操作性的拖拽游戏
# 注意,此游戏用到 迷你游戏1猜球盅 定义的部分图片和变量
###################################################################################
### 系统正文 #######################################################################
#包括动效在内的预定义
image grboxi1 = "minigame/rollbox1.png"
image grboxi2 = "minigame/rollbox2.png"
image grboxi3 = "minigame/rollbox3.png"
image grboxi4 = "minigame/rollbox4.png"
image dicei1 = "minigame/dice1.png"
image dicei2 = "minigame/dice2.png"
image dicei3 = "minigame/dice3.png"
image dicei4 = "minigame/dice4.png"
image dicei5 = "minigame/dice5.png"
image dicei6 = "minigame/dice6.png"
default grbox1 = "grboxi3"
default grbox2 = "grboxi3"
default grbox3 = "grboxi3"
default grdice1 = "dice1"
default grdice2 = "dice1"
#随机交换
default grsuiji = 0
#每回合交换次数
#【这一数值可自定义】
default grround = 3
#以上是 迷你游戏1猜球盅 里定义的图片和变量
#设置一个根据玩家拖拽路径改变的变量
default shakeroute = 0
#在init里,根据玩家拖动的方式不同改变变量
init python:
def shakegame_dragged(drags, drop):
if not drop:
return
return True
def shakegame_dragging(drags):
global shakeroute
shakeroute = shakeroute + 1
return
#玩家操作的窗口
screen shakegame0():
frame:
background Solid("#bbb")
xysize (960,540)
pos (0,0)
add "[grdice1]":
anchor (0.5,1.0)
xpos 480 ypos 450
add "[grbox1]":
anchor (0.5,1.0)
xpos 480 ypos 450
frame:
background Solid("#999")
xysize (960,540)
pos (0,540)
draggroup:
drag:
drag_name "box1"
child "grboxi4"
draggable False
anchor (0.5,1.0)
xpos 480 ypos 450
add "grboxi4"
drag:
drag_name "box2"
child "grboxi1"
droppable False
dragged shakegame_dragged
dragging shakegame_dragging
anchor (0.5,1.0)
xpos 480 ypos 450
add "[grbox2]"
timer 0.1 action Hide("shakegame1")
#敌方(随机)操作的窗口(动画)
transform shake1():
anchor (0.5,1.0)
xpos 480 ypos 450
linear 0.25 xpos 180
linear 0.25 xpos 480
linear 0.25 xpos 780
linear 0.25 xpos 480
transform shake2():
anchor (0.5,1.0)
xpos 480 ypos 450
alpha 0
pause 1 alpha 1
transform shake3():
anchor (0.5,1.0)
xpos 480 ypos 450
alpha 1
linear 0.3 alpha 0
screen shakegame_1():
tag shakegame
frame:
background Solid("#bbb")
xysize (960,540)
pos (0,0)
add "[grdice1]"at shake2
add "[grbox1]" at shake1
frame:
background Solid("#999")
xysize (960,540)
pos (0,540)
add "[grbox2]":
anchor (0.5,1.0)
xpos 480 ypos 450
timer 1.5 action Return(),Hide("shakegame_1")
#胜负结算窗口(动画)
screen shakegame1():
frame:
background Solid("#bbb")
xysize (960,540)
pos (0,0)
add "[grdice1]":
anchor (0.5,1.0)
xpos 480 ypos 450
add "[grbox1]":
anchor (0.5,1.0)
xpos 480 ypos 450
frame:
background Solid("#999")
xysize (960,540)
pos (0,540)
add "grboxi4" at shake3
add "[grdice2]":
anchor (0.5,1.0)
xpos 480 ypos 450
add "[grbox2]":
anchor (0.5,1.0)
xpos 480 ypos 450
##############################################################################################################
#调用流程
#【在游戏主流程中使用jump shakegame或call shakegame即可调用游戏】
label shakegame:
hide screen shakegame0
hide screen shakegame1
$ grbox1 = "grboxi1"
$ grbox2 = "grboxi1"
$ grsuiji = renpy.random.randint(1, 6)
if grsuiji == 1:
$ grdice1 = "dice1"
elif grsuiji == 2:
$ grdice1 = "dice2"
elif grsuiji == 3:
$ grdice1 = "dice3"
elif grsuiji == 4:
$ grdice1 = "dice4"
elif grsuiji == 5:
$ grdice1 = "dice5"
elif grsuiji == 6:
$ grdice1 = "dice6"
show screen shakegame1
call screen shakegame_1
call screen shakegame0
show screen shakegame1
$ grbox1 = "grboxi3"
jump shakegameround
#胜负结算
label shakegameround:
"对方的点数是[grsuiji]"
#通过玩家拖拽得到的一定变量计算点数
#计算式为整除(变量能整除6则点数为6,整除5则点数为5,不能整除则为1)
"你的步长是[shakeroute]\n(步长//10)\%点数 = 0"
$ shakeroute = shakeroute//10
if shakeroute % 6 == 0:
$ shakeroute = 6
$ grdice2 = "dice6"
elif shakeroute % 5 == 0:
$ shakeroute = 5
$ grdice2 = "dice5"
elif shakeroute % 4 == 0:
$ shakeroute = 4
$ grdice2 = "dice4"
elif shakeroute % 3 == 0:
$ shakeroute = 3
$ grdice2 = "dice3"
elif shakeroute % 2 == 0:
$ shakeroute = 2
$ grdice2 = "dice2"
else:
$ shakeroute = 1
$ grdice2 = "dice1"
$ grbox2 = "grboxi3"
show screen shakegame1
"你的点数是[shakeroute]"
menu:
"这个点数..."
"再摇一次":
$ shakeroute = 0
$ grbox2 = "grboxi1"
call screen shakegame0
show screen shakegame1
$ grbox1 = "grboxi3"
jump shakegameround
"足够了":
if shakeroute > grsuiji:
"你赢了"
elif shakeroute == grsuiji:
"平局"
else:
"你输了"
menu:
"继续":
$ shakeroute = 0
$ grbox1 = "grboxi1"
$ grbox2 = "grboxi1"
jump shakegame
"结束":
return
#查看我写的更多屎
【屎山代码插件】简单rpg地图移动
https://www.renpy.cn/forum.php?mod=viewthread&tid=1652
【屎山代码插件】摇骰子小游戏
https://www.renpy.cn/forum.php?mod=viewthread&tid=1653
【屎山代码插件】猜球盅小游戏
https://www.renpy.cn/forum.php?mod=viewthread&tid=1574
粉身碎骨浑不怕,要留答辩在人间
|