赞 | 0 |
VIP | 3 |
好人卡 | 5 |
积分 | 3 |
经验 | 29056 |
最后登录 | 2024-8-15 |
在线时间 | 1079 小时 |
Lv2.观梦者
- 梦石
- 0
- 星屑
- 311
- 在线时间
- 1079 小时
- 注册时间
- 2011-9-18
- 帖子
- 3286
|
- #==============================================================================
- # ■ Scene_Mission
- #------------------------------------------------------------------------------
- # 处理任务选择的类。
- #=============================================================================
- class Scene_Mission < Scene_Base
- WLH = 24
- #--------------------------------------------------------------------------
- # ● 开始处理
- #--------------------------------------------------------------------------
- def start
- super
- create_menu_background
- @mission_view = Window_Command.new(640,["进行中","已完成"],2)
- @list_window = Window_Command.new(240,["暂时没有进行中的任务"])
- @list_window.y = 56
- @list_window.height = 480-64
- @dummy_window = Window_Base.new(0,56,240, 480-56)
- @content_window = Window_Base.new(240,56,640-240,480-56)
- @list_window.visible = false
- @list_window.active = false
- @content_window.active = false
- $game_system.set_mission
- end
- #--------------------------------------------------------------------------
- # ● 结束处理
- #--------------------------------------------------------------------------
- def terminate
- super
- dispose_menu_background
- @mission_view.dispose
- @list_window.dispose
- @content_window.dispose
- @dummy_window.dispose
- $scene = Scene_Menu.new(5)
- end
- #--------------------------------------------------------------------------
- # ● 更新画面
- #--------------------------------------------------------------------------
- def update
- super
- Graphics.update
- Input.update
- update_menu_background
- @mission_view.update
- @list_window.update
- @content_window.update
- @dummy_window.update
- if @mission_view.active
- update_view_selection
- elsif @list_window.active
- update_list_selection
- elsif @content_window.active
- update_content_selection
- end
- end
- #--------------------------------------------------------------------------
- # ● 更新第一行窗口选项
- #--------------------------------------------------------------------------
- def update_view_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- $scene = Scene_Map.new
- elsif Input.trigger?(Input::C)
- Sound.play_decision
- @mission_view.active = false
- @list_window.active = true
- @list_window.visible = true
- @dummy_window.visible = false
- case @mission_view.index
- when 0 # 进行中
- arr = []
- for i in $game_system.mission_id
- arr.push($game_system.list[i])
- end
- if $game_system.mission_id.length == 0
- arr = ["暂时没有进行中的任务"]
- end
- when 1 # 已完成
- arr = []
- for i in $game_system.finish_id
- arr.push($game_system.list[i])
- end
- if $game_system.finish_id.length == 0
- arr = ["暂时没有已完成的任务"]
- end
- end
- @list_window.dispose
- @list_window = Window_Command.new(240,arr)
- @list_window.y = 56
- @list_window.height = 480-56
- end
- end
- #--------------------------------------------------------------------------
- # ● 更新任务列表窗口选项
- #--------------------------------------------------------------------------
- def update_list_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- @mission_view.active = true
- @list_window.active = false
- @list_window.visible = false
- @dummy_window.visible = true
- elsif Input.trigger?(Input::C)
- n = $game_system.list.index(@list_window.commands[@list_window.index])
- if(n == nil)
- Sound.play_cancel
- else
- Sound.play_decision
- @list_window.active = false
- @content_window.active = true
- str = $game_system.contents[n]
- draw_text_m(str)
- end
- end
- end
- #--------------------------------------------------------------------------
- # ● 更新任务内容窗口选项
- #--------------------------------------------------------------------------
- def update_content_selection
- if Input.trigger?(Input::B)
- Sound.play_cancel
- @list_window.active = true
- @content_window.active = false
- @content_window.contents.clear
- end
- end
- #--------------------------------------------------------------------------
- # ● 获取特定颜色
- #--------------------------------------------------------------------------
- def text_color(n)
- windowskin = Cache.system("Window")
- x = 64 + (n % 8) * 8
- y = 96 + (n / 8) * 8
- return windowskin.get_pixel(x, y)
- end
- #--------------------------------------------------------------------------
- # ● 任务内容的绘制
- #--------------------------------------------------------------------------
- def draw_text_m(str)
- text = str.clone
- text.gsub!(/\\C\[(\d+)\]/i) { "\x01[#{$1}]" }
- n = 0
- r = 0
- loop do
- c = text.slice!(/./m)
- case c
- when "\n"
- n += 1
- r = 0
- next
- when "\x01"
- text.sub!(/\[([0-9]+)\]/, "")
- @content_window.contents.font.color = text_color($1.to_i)
- next
- end
- w = @content_window.contents.text_size(c).width
- @content_window.contents.draw_text(r,WLH*n,w,WLH,c)
- r += w
- if text == ""
- break
- end
- end
- end
- end
- class Game_System
- #--------------------------------------------------------------------------
- # ● 获取物品数量
- #--------------------------------------------------------------------------
- def item_no(n)
- return $game_party.item_number($data_items[n])
- end
- #--------------------------------------------------------------------------
- # ● 设置任务
- #
- # 设置任务的格式为
- # $game_system.list[任务编号] = 任务名称
- # $game_system.difficulty[任务编号] = 任务难度
- # $game_system.contents[任务编号] = 任务内容
- #{$game_variables[n]} ——插入n号变量的值
- #{item_no(n)} —— 插入持有n号物品数量
- # 注意上面两个表达式的"#"都要写
- # \n是换行,或者直接用回车换行也可以
- # \\C[x]是将颜色改变为x号颜色,注意两条斜杠都要写
- #--------------------------------------------------------------------------
- def set_mission
- # |
- # |
- # 建议在竖线之前写字,超出竖线换行 |
- # |
- # |
-
- #-----------------------
- #0号任务——丢失的章鱼壶
- #-----------------------
-
- $game_system.list[0] = "【主线】丢失的章鱼壶"
- $game_system.difficulty[0] = "★★"
- $game_system.contents[0] =
-
- "\\C[23] 任务名称:\\C[0]丢失的章鱼壶\n"
- if $game_switches[203]
- $game_system.contents[0] +=
-
- " 帮助小黄鸡找回了章鱼壶,但只是减免了一点
- 债务而已吗?!"
- else
- $game_system.contents[0] +=
-
- " \\C[3]当前任务内容:\\C[0]
- 小黄鸡在 遗迹 - 7F 水沟附近丢失了一个章鱼
- 壶,需要帮助其找回。
- \\C[20]当前任务目标:\\C[0]
- 找回丢失的章鱼壶。
- 章鱼壶:#{item_no(96)}/1。
- \\C[10]当前任务奖励:\\C[0]未知。"
-
- end
- #-----------------------
- #1号任务——协助进货
- #-----------------------
-
- $game_system.list[1] = "协助进货"
- $game_system.difficulty[1] = "☆"
- $game_system.contents[1] =
-
- "\\C[23] 任务名称:\\C[0]协助进货\n"
-
- if $game_switches[34]
- $game_system.contents[1] +=
-
- " 成功帮助黄亦天完成了进货,获得了100经验。"
-
- elsif $game_switches[32] && $game_switches[33]
- $game_system.contents[1] +=
-
- " \\C[3]当前任务内容\\C[0]:
- 进货单已经送到了,回到黄亦天那里吧!
- \\C[20]当前任务目标\\C[0]:
- 找到黄亦天。
- \\C[10]当前任务奖励:\\C[0]100经验。"
-
- elsif $game_switches[32] && item_no(68) == 1
- $game_system.contents[1] +=
-
- " \\C[3]当前任务内容\\C[0]:
- 到6R城门口找到送货商递交进货单。
- \\C[20]当前任务目标\\C[0]:
- 找到送货商。
- \\C[10]当前任务奖励:\\C[0]无。"
-
- elsif $game_switches[32]
- $game_system.contents[1] +=
-
- " \\C[3]当前任务内容\\C[0]:
- 黄亦天最近上货的时候缺乏人手,正在招募帮
- 手。如果有意的话可以去帮忙。
- \\C[20]当前任务目标\\C[0]:
- 找到黄亦天。
- \\C[10]当前任务奖励:\\C[0]无。"
- end
-
- #-----------------------
- #2号任务——移动的地穴
- #-----------------------
- $game_system.list[2] = "【主线】移动的地穴"
- $game_system.difficulty[2] = "★"
- $game_system.contents[2] =
-
- "\\C[23] 任务名称:\\C[0]移动的地穴\n"
- if $game_variables[79] == 2&&$game_switches[143]
- $game_system.contents[2]+=
- " 找到了地穴并向仲秋启明报告了。除了1VIP外,
- 只获得了口头赞许。
- 那个地穴应该没有这么简单吧?"
-
- elsif $game_variables[79] == 2
- $game_system.contents[2]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 发现了那个地穴!赶快回去报告吧!
- \\C[20]当前任务目标:\\C[0]
- 向仲秋启明报告。
- \\C[10]当前任务奖励:\\C[0]1VIP+未知物品。"
-
- elsif $game_variables[79] == 3
- $game_system.contents[2]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 原来地穴中有这样一个秘密。在弄清楚事情之前
- 还是先不要报告吧。
- \\C[20]当前任务目标:\\C[0]
- 无。
- \\C[10]当前任务奖励:\\C[0]1VIP+未知物品。"
-
- elsif $game_variables[79] == 1
- $game_system.contents[2]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 最近有居民晚上走夜路的时候在城南发现了一个
- 地穴,但公会派人去查看的时候地穴已经不见了,有
- 空就去再探查一下吧,应该没太大的危险。
- \\C[20]当前任务目标:\\C[0]
- 找到移动的地穴。
- \\C[10]当前任务奖励:\\C[0]无。"
-
- end
-
- #-----------------------
- #3号任务——爱泡温泉的欧巴蒂芬
- #-----------------------
- $game_system.list[3] = "爱泡温泉的欧巴蒂芬"
- $game_system.difficulty[3] = "★☆"
- $game_system.contents[3] =
-
- "\\C[23] 任务名称:\\C[0]爱泡温泉的欧巴蒂芬\n"
- if $game_variables[10] == 5
- $game_system.contents[3]+=
-
- " 找到了泡温泉的欧巴蒂芬并让她加入了队伍。获
- 得了一些EXP和装备。"
- elsif $game_variables[10] == 4
- $game_system.contents[3]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 有惊无险地泡了温泉......把欧巴蒂芬带回小七
- 那里吧!
- \\C[20]当前任务目标:\\C[0]
- 将欧巴蒂芬带回小七处。
- \\C[10]当前任务奖励:\\C[0]
- 1点名声+300EXP+未知物品。"
-
- elsif $game_variables[10] == 1
- $game_system.contents[3]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 小七最近正在制作一个叫做《风之律》的游戏,
- 但主角欧巴蒂芬却跑了出来……小七想让我帮助找回。
- 听小七说,欧巴蒂芬喜欢泡温泉。
- \\C[20]当前任务目标:\\C[0]
- 找到欧巴蒂芬。
- \\C[10]当前任务奖励:\\C[0]无。"
-
- end
-
- #-----------------------
- #4号任务——Master在哪里
- #-----------------------
- $game_system.list[4] = "Master在哪里"
- $game_system.difficulty[4] = "★"
- $game_system.contents[4] =
-
- "\\C[23] 任务名称:\\C[0]Master在哪里\n"
- if $game_switches[12]
- $game_system.contents[4]+=
-
- " 帮助绿坝娘找到了Master,获得了一些经验
- 和VIP。
- 黄亦天说有什么需要请教的可以找他,但是
- 【银笑】是怎么回事= ="
- elsif $game_variables[11] == 6 && $game_switches[11]
- $game_system.contents[4]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 绿坝娘感应到了Master的位置,赶快去工会所看
- 看吧。
- \\C[20]当前任务目标:\\C[0]
- 去工会所寻找绿坝娘的Master。
- \\C[10]当前任务奖励:\\C[0]1VIP+200经验。"
- elsif $game_variables[11] == 5 && $game_switches[11]
- $game_system.contents[4]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 锻造店也没有。那么去美术馆找找吧。
- \\C[20]当前任务目标:\\C[0]
- 去美术馆寻找绿坝娘的Master。
- \\C[10]当前任务奖励:\\C[0]无。"
- elsif $game_variables[11] == 4 && $game_switches[11]
- $game_system.contents[4]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 在工会所也没有找到绿坝娘的Master,锻造店会
- 不会有Master的踪影呢?
- \\C[20]当前任务目标:\\C[0]
- 去锻造店寻找绿坝娘的Master。
- \\C[10]当前任务奖励:\\C[0]无。"
- elsif $game_variables[11] == 3 && $game_switches[11]
- $game_system.contents[4]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 在酒吧没有发现绿坝娘的Master,接下来去工会
- 所找找看吧。
- \\C[20]当前任务目标:\\C[0]
- 去工会所寻找绿坝娘的Master。
- \\C[10]当前任务奖励:\\C[0]无。"
-
- elsif $game_variables[11] == 1 && $game_switches[11]
- $game_system.contents[4]+=
-
- " \\C[3]当前任务内容:\\C[0]
- 在遗迹附近遇到了正在寻找Master的绿坝娘,据
- 绿坝娘说,今天他是穿着一件风衣带着一条围巾……
- 风衣怪人的感觉。先去酒吧找找看吧。
- \\C[20]当前任务目标:\\C[0]
- 去酒吧寻找绿坝娘的Master。
- \\C[10]当前任务奖励:\\C[0]无。"
-
- end
-
- #-----------------------
- #5号任务——寻找开水壶
- #-----------------------
-
- $game_system.list[5] = "寻找开水壶"
- $game_system.difficulty[5] = "★★★"
- $game_system.contents[5] =
-
- "\\C[23] 任务名称:\\C[0]寻找开水壶\n"
- if $game_switches[29]
- $game_system.contents[5] +=
-
- " 帮助认真的学找回了开水壶,关于开水壶的一些问题
- 可以找到认真的学再询问一下。"
- elsif $game_switches[28] && item_no(52) == 1
- $game_system.contents[5] +=
-
- " \\C[3]当前任务内容:\\C[0]
- 走过了开水区迷宫,找到了开水壶。赶快给认真的学送
- 去吧。可以在工会所 - 宿舍找到他。
- \\C[20]当前任务目标:\\C[0]
- 将开水壶还给认真的学。
- 章鱼壶:#{item_no(96)}/1。
- \\C[10]当前任务奖励:\\C[0]
- 1好人卡+400EXP+3点名声+未知物品。"
-
- elsif $game_switches[28]
- $game_system.contents[5] +=
-
- " \\C[3]当前任务内容:\\C[0]
- 在开水区中遇到了认真的学,他希望我帮他找到丢失的
- 开水壶。
- \\C[20]当前任务目标:\\C[0]
- 通过开水区迷宫,找到开水壶。
- 章鱼壶:#{item_no(96)}/1。
- \\C[10]当前任务奖励:\\C[0]无。"
- end
-
- end
- end
- #-----------------------
- #6号任务——瘟疫的源头
- #-----------------------
-
- $game_system.list[6] = "瘟疫的源头"
- $game_system.difficulty[6] = "★★★★"
- $game_system.contents[6] =
-
- "\\C[23] 任务名称:\\C[0]瘟疫的源头\n"
- if $game_switches[117]
- $game_system.contents[6] +=
-
- " 终于把这帮家伙赶回去了……不然还不成了生化危
- 机了。 "
- else
- $game_system.contents[6] +=
-
- " \\C[3]当前任务内容:\\C[0]
- 6R城管理人员们急需“瘟疫”这种怪物的有效资料,希
- 望能收集到一些,并以此查出他们的源头,将他们送回
- 原来的世界.
- \\C[20]当前任务目标:\\C[0]
- 和瘟疫作战1次(胜负勿论)
- \\C[10]当前任务奖励:\\C[0]未知。"
-
- end
复制代码 ……话说新加任务的时候莫名其妙的出了问题呢TAT
具体出问题的部分在上面,请脚本的作者看看我那里的使用出错了呢TAT
@Sonic1997 @仲秋启明@黄亦天 |
|