楼主: tan12345

[RMVA发布] [教程向]VA任务系统

[复制链接]
梦石
0
星屑
50
在线时间
641 小时
注册时间
2015-7-29
回帖
188
发表于 2016-4-26 09:15:45 | 显示全部楼层
请教一下如何在事件脚本中判定 该 任务是已完成未交付的状态呢?。望解答。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
641 小时
注册时间
2015-7-29
回帖
188
发表于 2016-4-26 09:31:47 | 显示全部楼层
完成任务的时候为什么不扣除相应的物品   也不会奖励物品呢?   ??   
回复

使用道具 举报

梦石
0
星屑
50
在线时间
28 小时
注册时间
2016-4-23
回帖
6
发表于 2016-5-12 16:05:53 | 显示全部楼层
为什么我只能写你的例子中的3个任务,还有你的一号任务为什么没有显示,为什么??????还有人吗,可以帮忙回答吗
回复

使用道具 举报

梦石
0
星屑
1297
在线时间
995 小时
注册时间
2014-12-14
回帖
2939

开拓者

发表于 2016-5-13 16:46:23 | 显示全部楼层
本帖最后由 Vortur 于 2016-5-14 19:31 编辑


已查是 字体文件 的原因,使用“暂时切换字体”应该可以解决





感谢分享!
这里好像没有人讨论【文字被压缩】的事情,所以在下放上一个链接:
https://rpg.blue/thread-380604-1-1.html

【RMVA教程】
---------------------
欲买桂花同载酒,终不似,少年游.
回复

使用道具 举报

梦石
0
星屑
664
在线时间
101 小时
注册时间
2016-7-15
回帖
130
发表于 2016-7-26 17:05:28 | 显示全部楼层
求解楼主:
1.为毛我的任务公会列表窗口和任务列表窗口都会报错?
这个脚本很好用,希望别出什么差错,我的剧情全靠它了啊!
100经验虽然贵,但是的却是个不错的脚本
回复

使用道具 举报

梦石
0
星屑
14802
在线时间
1014 小时
注册时间
2014-10-24
回帖
325
发表于 2016-7-26 19:09:27 | 显示全部楼层
需要好好学习··任务系统肯定有搞头
回复

使用道具 举报

梦石
0
星屑
1297
在线时间
995 小时
注册时间
2014-12-14
回帖
2939

开拓者

发表于 2016-12-1 21:19:40 | 显示全部楼层
本帖最后由 Vortur 于 2016-12-1 03:35 编辑


"免确定"的刷新


谢谢分享!下面贴上在下最近的研究成果
功能介绍
像空轨任务系统那样的【免确定刷新】
  左右选择任务类型,上下选择任务列表
  实时操作↑,免除确定取消

PS:
可能存在未知错误,在下技能有限...欢迎斧正
灵感来自此贴:【空轨任务系统→VA】
思路有两个:Window_Selectable修改,另一个就是这里贴出的方法
坏处是,"列表窗口中首项移动"等情况下,声效失灵。目前未想到解决方法



  


1.  任务类型、任务列表中增加
在下分别加在了“更新画面”和“获取窗口高度”的后面
[pre lang="ruby"]
  #--------------------------------------------------------------------------
  # ▼ “确定”和“取消”的处理
  #--------------------------------------------------------------------------
  def process_handling
    return unless open? && active
    return process_ok       if ok_enabled?        && Input.trigger?(:C)
    return process_cancel   if cancel_enabled?    && Input.trigger?(:B)
    return process_pagedown if handle?(:pagedown) && Input.trigger?(:R)
    return process_pageup   if handle?(:pageup)   && Input.trigger?(:L)
    return process_DOWN if handle?(:DOWN)   && Input.repeat?(:DOWN)
    return process_UP if handle?(:UP)   && Input.repeat?(:UP)
    return process_RIGHT if handle?(:RIGHT)   && Input.repeat?(:RIGHT)
    return process_LEFT if handle?(:LEFT)   && Input.repeat?(:LEFT)
  end
  #--------------------------------------------------------------------------
  # ▼ 按下 ↑ 键(UP)时的处理
  #--------------------------------------------------------------------------
  def process_UP
    Input.update
    deactivate
    call_handler(:UP)
  end
  #--------------------------------------------------------------------------
  # ▼ 按下 ↓ 键(DOWN)时的处理
  #--------------------------------------------------------------------------
  def process_DOWN
    Input.update
    deactivate
    call_handler(:DOWN)
  end
  #--------------------------------------------------------------------------
  # ▼ 按下 ← 键(LEFT)时的处理
  #--------------------------------------------------------------------------
  def process_LEFT
    Input.update
    deactivate
    call_handler(:LEFT)
  end
  #--------------------------------------------------------------------------
  # ▼ 按下 → 键(RIGHT)时的处理
  #--------------------------------------------------------------------------
  def process_RIGHT
    Input.update
    deactivate
    call_handler(:RIGHT)
  end[/pre]



  
2.  任务查看(界面)修改Scene_Tan_Task中
1)  类型窗体改为这样:
[pre lang="ruby"]  def create_select_window
    @tasktype_window = Window_Tan_Task_Type.new
    @tasktype_window.viewport = @viewport
    @tasktype_window.activate
    @tasktype_window.item_list_window = @tasklist_window
    @tasktype_window.set_handler(:UP,     method(:on_tasktype_UP))
    @tasktype_window.set_handler(:DOWN,     method(:on_tasktype_DOWN))
    @tasktype_window.set_handler(:cancel, method(:return_scene))
  end[/pre]
2)  列表窗体改为这样:
[pre lang="ruby"]
  def create_tasklist_window
    @tasklist_window = Window_Tan_Task_List.new
    @tasklist_window.viewport = @viewport
    @tasklist_window.status_window = @task_window
    @tasklist_window.deactivate
    @tasklist_window.set_handler(:ok, method(:select_tasklist_ok))
    @tasklist_window.set_handler(:cancel, method(:return_scene))
    @tasklist_window.set_handler(:LEFT, method(:select_tasklist_LEFT))
    @tasklist_window.set_handler(:RIGHT, method(:select_tasklist_RIGHT))
  end[/pre]
3)  "任务选择窗口按取消"(任务列表窗口) 的代码内容改为这样
[pre lang="ruby"]  def select_tasklist_LEFT
    # 要清零idenx。否则某类型列表小于2时bug
    @tasklist_window.index=0
    @tasklist_window.deactivate
    @tasktype_window.activate
    if @tasktype_window.index==0
      then @tasktype_window.index=@tasktype_window.item_max-1
      else @tasktype_window.index-=1
    end
  end
  def select_tasklist_RIGHT
    # 要清零idenx
    @tasklist_window.index=0
    @tasklist_window.deactivate
    @tasktype_window.activate
    if @tasktype_window.index==@tasktype_window.item_max-1
      then @tasktype_window.index=0
      else @tasktype_window.index+=1
    end
  end[/pre]
4)  "任务类型窗口的确定" 的代码内容改为这样
[pre lang="ruby"]  def on_tasktype_UP
    @tasktype_window.deactivate
    @tasklist_window.activate
    @tasklist_window.index=@tasklist_window.item_max-1
  end
  def on_tasktype_DOWN
    @tasktype_window.deactivate
    @tasklist_window.activate
    @tasklist_window.cursor_down (Input.trigger?(:DOWN))
  end[/pre]



  








  
  
【RMVA教程】
---------------------
欲买桂花同载酒,终不似,少年游.
回复

使用道具 举报

梦石
0
星屑
2019
在线时间
940 小时
注册时间
2015-10-26
回帖
293

开拓者

发表于 2016-12-29 00:52:59 | 显示全部楼层
本帖最后由 踢腿水上飘 于 2016-12-29 11:13 编辑

楼主,我想问一下,我想把这个任务系统分成主线和支线两部分,在菜单里面添加主线和支线的条目,然后选主线就进入主线任务的内容查看,选支线就进入支线的内容查看,这个要怎么做呢?
回复

使用道具 举报

梦石
0
星屑
809
在线时间
176 小时
注册时间
2017-1-15
回帖
50
发表于 2017-9-12 16:34:16 | 显示全部楼层
求教一下,怎么改变任务的状态?就是把已完成的任务改成还没接受的任务

点评

哦,知道了,只要放弃任务就可以恢复初始的状态了  发表于 2017-9-13 09:34
重新添加一遍任务  发表于 2017-9-12 16:55
回复

使用道具 举报

梦石
0
星屑
2019
在线时间
940 小时
注册时间
2015-10-26
回帖
293

开拓者

发表于 2017-9-13 00:44:41 来自手机 | 显示全部楼层
本帖最后由 踢腿水上飘 于 2017-9-13 00:48 编辑

求教下,能不能在事件指令里修改任务的说明?
比方说接任务的时候说明是找a了解情况,和a说话后任务说明后面又记上从a这里知道的情况

点评

这个任务系统的核心是【数组】,每次启动游戏时,都要【重置】;要说行的话,必须使用【外部的存储文件】  发表于 2017-9-13 12:31
不行。这个结构的任务系统不行。去图书馆搜【韩云溪】任务修改版,那个可以  发表于 2017-9-13 12:30
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部