- 注册时间
- 2007-3-14
- 最后登录
- 2019-7-1
②入门
- 积分
- 57
|
发表于 2007-10-14 08:03:34
|
显示全部楼层
或者
#===============================================================================
# from yangff
# 修改 by calvia
# $scene = Scene_Play.new
# 冲突:不可能
#===============================================================================
class Scene_Play
def main
@command = 1
@help_window = Window_extHelp.new#calvia
@timer_command = Window_Command.new(160,["1","2","3","4","5"])
@place_command = Window_Command.new(160,["1","2","3","4","5"])
@place_command.active = false
@who_command = Window_Command.new(160,["1","2","3","4","5"])
@help_window.set_text("请选择时间")
@who_command.active = false
@help_window.y = 32 + 64 #calvia
@timer_command.x = 80
@timer_command.y =32 * 5#calvia
@place_command.x = 80 + 160
@place_command.y = 32 * 5#calvia
@who_command.x = 80 + 160 + 160
@who_command.y = 32 * 5#calvia
##########################################################calvia
@who_command.index = -1
@place_command.index = -1
@who_command.back_opacity = 160
@place_command.back_opacity = 160
@timer_command.back_opacity = 160
@help_window.back_opacity = 160
@map = Spriteset_Map.new
##########################################################
Graphics.transition
loop do
# 刷新游戏画面
Graphics.update
# 刷新输入信息
Input.update
# 刷新画面
update
# 如果画面被切换就中断循环
if $scene != self
break
end
end
# 装备过渡
Graphics.freeze
# 释放命令窗口
@timer_command.dispose
@place_command.dispose
@who_command.dispose
@help_window.dispose
@map.dispose#calvia
end
def update
@help_window.update#calvia
@timer_command.update
@place_command.update
@who_command.update
@map.update#calvia
if Input.trigger?(Input::C)
case @command
when 1
@place_command.active = true
@timer_command.active = false
@place_command.index = 0##calvia
case @timer_command.index
when 0 # 1
x = rand(4)
case x
when 0
@hua = "今天,"
when 1
@hua = "半夜三更,"
when 2
@hua = "午夜凶铃,"
when 3
@hua = "中午,"
when 4
@hua = "世界灭亡的时候,"
end
when 1 # 2
x = rand(4)
case x
when 0
@hua = "今天,"
when 1
@hua = "半夜三更,"
when 2
@hua = "午夜凶铃,"
when 3
@hua = "中午,"
when 4
@hua = "世界灭亡的时候,"
end
when 2 # 3
x = rand(4)
case x
when 0
@hua = "今天,"
when 1
@hua = "半夜三更,"
when 2
@hua = "午夜凶铃,"
when 3
@hua = "中午,"
when 4
@hua = "世界灭亡的时候,"
end
when 3
x = rand(4)
case x
when 0
@hua = "今天,"
when 1
@hua = "半夜三更,"
when 2
@hua = "午夜凶铃,"
when 3
@hua = "中午,"
when 4
@hua = "世界灭亡的时候,"
end
when 4
x = rand(4)
case x
when 0
@hua = "今天,"
when 1
@hua = "半夜三更,"
when 2
@hua = "午夜凶铃,"
when 3
@hua = "中午,"
when 4
@hua = "世界灭亡的时候,"
end
end
@help_window.set_text("请选择地点")
@command += 1
when 2
@place_command.active = false
@who_command.active = true
@who_command.index = 0#calvia
x = rand(4)
case @place_command.index
when 0 # 1
case x
when 0
@hua = @hua + "你马桶里,"
when 1
@hua = @hua + "我在大便堆里,"
when 2
@hua = @hua + "狗死在肯得基里,"
when 3
@hua = @hua + "大便在家门口,"
when 4
@hua = @hua + "阿尔西斯在火炉里,"
end
when 1 # 2
case x
when 0
@hua = @hua + "你马桶里,"
when 1
@hua = @hua + "我在大便堆里,"
when 2
@hua = @hua + "狗死在肯得基里,"
when 3
@hua = @hua + "大便在家门口,"
when 4
@hua = @hua + "阿尔西斯在火炉里,"
end
when 2 # 3
case x
when 0
@hua = @hua + "你马桶里,"
when 1
@hua = @hua + "我在大便堆里,"
when 2
@hua = @hua + "狗死在肯得基里,"
when 3
@hua = @hua + "大便在家门口,"
when 4
@hua = @hua + "阿尔西斯在火炉里,"
end
when 3
case x
when 0
@hua = @hua + "你马桶里,"
when 1
@hua = @hua + "我在大便堆里,"
when 2
@hua = @hua + "狗死在肯得基里,"
when 3
@hua = @hua + "大便在家门口,"
when 4
@hua = @hua + "阿尔西斯在火炉里,"
end
when 4
case x
when 0
@hua = @hua + "你马桶里,"
when 1
@hua = @hua + "我在大便堆里,"
when 2
@hua = @hua + "狗死在肯得基里,"
when 3
@hua = @hua + "阿尔西斯在火炉里,"
when 4
@hua = @hua + "大便在家门口,"
end
end
@help_window.set_text("请选择事件")
@command += 1
when 3
@who_command.active = false
x = rand(4)
case x
when 0 # 1
@hua = @hua + "吃大便。"
when 1 # 2
@hua = @hua + "吃鸡块。"
when 2 # 3
@hua = @hua + "散步。"
when 3
@hua = @hua + "煮饭。"
when 4
@hua = @hua + "打架分钱。"
end
@help_window.set_text(@hua)
@command = 4
########################################################calvia
when 4
@who_command.active = false
@timer_command.active = true
@place_command.active = false
@place_command.index = -1
@who_command.index = -1
@command = 1
#########################################################
end
end
if Input.trigger?(Input::B)
if @command == 1
$scene = Scene_Map.new
elsif @command == 2
@command -= 1
@place_command.active = false
@timer_command.active = true
@hua2 = ""
@help_window.set_text("请选择时间")
elsif @command == 4
$scene = Scene_Map.new
elsif @command == 3
@command -= 1
@place_command.active = true
@who_command.active = false
@hua2 = ""
@help_window.set_text("请选择地点")
end
end
end
end
#########################################################################calvia
#==============================================================================
# ■ Window_Help
#------------------------------------------------------------------------------
# 特技及物品的说明、角色的状态显示的窗口。
#==============================================================================
class Window_extHelp < Window_Base
#--------------------------------------------------------------------------
# ● 初始化对像
#--------------------------------------------------------------------------
def initialize
super(80, 0, 480, 64)
self.contents = Bitmap.new(width - 32, height - 32)
end
#--------------------------------------------------------------------------
# ● 设置文本
# text : 窗口显示的字符串
# align : 对齐方式 (0..左对齐、1..中间对齐、2..右对齐)
#--------------------------------------------------------------------------
def set_text(text, align = 0)
# 如果文本和对齐方式的至少一方与上次的不同
if text != @text or align != @align
# 再描绘文本
self.contents.clear
self.contents.font.color = normal_color
self.contents.draw_text(4, 0, self.width - 40, 32, text, align)
@text = text
@align = align
@actor = nil
end
self.visible = true
end
#--------------------------------------------------------------------------
# ● 设置角色
# actor : 要显示状态的角色
#--------------------------------------------------------------------------
def set_actor(actor)
if actor != @actor
self.contents.clear
draw_actor_name(actor, 4, 0)
draw_actor_state(actor, 140, 0)
draw_actor_hp(actor, 284, 0)
draw_actor_sp(actor, 460, 0)
@actor = actor
@text = nil
self.visible = true
end
end
#--------------------------------------------------------------------------
# ● 设置敌人
# enemy : 要显示名字和状态的敌人
#--------------------------------------------------------------------------
def set_enemy(enemy)
text = enemy.name
state_text = make_battler_state_text(enemy, 112, false)
if state_text != ""
text += " " + state_text
end
set_text(text, 1)
end
end |
|