Project1

标题: 请问:怎么做采集系统 [打印本页]

作者: rpg549007821    时间: 2010-10-18 05:42
标题: 请问:怎么做采集系统
比如说,一个采集点,你去采集可以得到物品,过一段会(按照步数决定)又可以去采集。
作者: 九夜神尊    时间: 2010-10-18 07:45
每次采集完用变量记录步数,下一次采集的时候判断步数差。
作者: 莹的赎生    时间: 2010-10-18 17:20
采集系统:(不是原创)
在Main  插入此脚本!
在事件里输入脚本
$scene = Scene_Collection
接有采集画面了
哈哈   

######################################################################
class Window_Collection < Window_Selectable
  def initialize
    super(240, 200, 120, 80)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.back_opacity = 160
    refresh
  end
  def refresh
    self.contents.clear
    #self.contents.draw_text(4, 20, 40, 32, "采集……", 2)
  end
  def update(t)
    @t = t
    for i in 0..@t
      self.contents.font.color = Color.new(32, 255, 32, 160)
      self.contents.draw_text(4, 0, 80, 32, "采集中……", 0)
      self.contents.font.color = Color.new(200, 200, 200, 160)
      self.contents.draw_text(4 + i * 4, 32, 4 ,20, "█", 0)
    end
  end  
end

class Window_Collection_End < Window_Selectable
  def initialize
    super(240, 200, 120, 80)
    self.contents = Bitmap.new(width - 32, height - 32)
    refresh
    update
  end
  def refresh
    self.contents.clear
  end
  def update
    self.contents.draw_text(4, 10, 80, 32, "得到 花 1 个")
  end
end

class Scene_Collection
  def main
    @spriteset = Spriteset_Map.new
    @message_window = Window_Message.new
    @i = 1   
    @collection_window = Window_Collection.new
    @wait_count = 20
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        return
      end
    end
    Graphics.freeze   
  end
  def update
    if @wait_count != 0
      @wait_count -= 1
      return
    elsif @i <= 20
      @collection_window.update(@i)
      @i += 1
      @wait_count = 20
      return
    else
      @collection_window.dispose
      update_collection_window
      @wait_count = 20
      return
    end        
  end
  def update_collection_window
    @collection_end_window = Window_Collection_End.new
    @wait_count = 160
    @collection_end_window.dispose
    $scene = Scene_Map.new   
  end
end
###################################################################
如果觉得我的答案好请在http://rpg.blue/thread-155979-1-1.html
回复:http://rpg.blue/thread-158881-1-1.html 认可莹的赎生
作者: 捣蛋    时间: 2010-11-4 14:40
这个我想可以实现..不用步数
直接变量+条件分歧吧?..变量1-10..比如说只有变量1.2.3采集成功.
其余都失败.采集成功的情况下.XX变量+1..新建一个事件页.
当XX变量为XX的时候.显示文章:"这里已经采集完了..请保护环境.避免过度采集"




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1