查看: 3583|回复: 15

[已经解决] 怎樣做出特別的商店事件?

[复制链接]
梦石
0
星屑
431
在线时间
403 小时
注册时间
2014-9-6
回帖
1212
发表于 2014-9-14 17:00:55 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
就是如果有買東西會說“謝謝惠顧”一類的話,
如果沒買或者只賣東西會說“不買還看什麼”一類的話。
大家好,我今年24岁,是学生

爪子

梦石
0
星屑
1678
在线时间
882 小时
注册时间
2014-8-28
回帖
1058
发表于 2014-9-14 19:31:14 | 显示全部楼层
{:2_276:}我常用的是VA...Xp的不怎么会。
个人坑《凝聚的祈愿》更新日记
网瘾少女的领域-Lofter
一时骂人一时爽,一直骂人一直爽^o^
回复

使用道具 举报

梦石
0
星屑
431
在线时间
403 小时
注册时间
2014-9-6
回帖
1212
 楼主| 发表于 2014-9-14 19:56:53 | 显示全部楼层
莫言别离 发表于 2014-9-14 19:31
我常用的是VA...Xp的不怎么会。

好……那VA的範例能發來下我看看麼?也許有用!
大家好,我今年24岁,是学生
回复

使用道具 举报

爪子

梦石
0
星屑
1678
在线时间
882 小时
注册时间
2014-8-28
回帖
1058
发表于 2014-9-14 20:08:54 | 显示全部楼层
1.jpg
VA的话我会这么弄...
第一个我要买勾上只允许购买
第二个我要卖添加一个空白商品。
个人坑《凝聚的祈愿》更新日记
网瘾少女的领域-Lofter
一时骂人一时爽,一直骂人一直爽^o^
回复

使用道具 举报

梦石
0
星屑
462
在线时间
871 小时
注册时间
2014-5-5
回帖
914
发表于 2014-9-14 20:13:17 | 显示全部楼层
其实只要在事件里加上对话即可

如果要更好点的话,可以显示图片,立绘头像之类
截图41.png
回复

使用道具 举报

梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2014-9-14 20:46:06 | 显示全部楼层
借助一点脚本即可。
[pre lang="Ruby"]class Game_Temp
  attr_accessor :bought
  alias rb_initialize initialize
  def initialize
    @bought = false
    rb_initialize
  end
end
class Scene_Shop
  alias rb_main main
  def main
    $game_temp.bought = false
    rb_main
  end
  def update_sell
    # 按下 B 键的情况下
    if Input.trigger?(Input::B)
      # 演奏取消 SE
      $game_system.se_play($data_system.cancel_se)
      # 窗口状态转向初期模式
      @command_window.active = true
      @dummy_window.visible = true
      @sell_window.active = false
      @sell_window.visible = false
      @status_window.item = nil
      # 删除帮助文本
      @help_window.set_text("")
      return
    end
    # 按下 C 键的情况下
    if Input.trigger?(Input::C)
      # 获取物品
      @item = @sell_window.item
      # 设置状态窗口的物品
      @status_window.item = @item
      # 物品无效的情况下、或者价格为 0 (不能卖出) 的情况下
      if @item == nil or @item.price == 0
        # 演奏冻结 SE
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # 演奏确定 SE
      $game_system.se_play($data_system.decision_se)
      # 获取物品的所持数
      case @item
      when RPG::Item
        number = $game_party.item_number(@item.id)
      when RPG::Weapon
        number = $game_party.weapon_number(@item.id)
      when RPG::Armor
        number = $game_party.armor_number(@item.id)
      end
      # 最大卖出个数 = 物品的所持数
      max = number
      # 窗口状态转向个数输入模式
      @sell_window.active = false
      @sell_window.visible = false
      @number_window.set(@item, max, @item.price / 2)
      @number_window.active = true
      @number_window.visible = true
      @status_window.visible = true
    end
  end
  #--------------------------------------------------------------------------
  # ● 刷新画面 (个数输入窗口激活的情况下)
  #--------------------------------------------------------------------------
  def update_number
    # 按下 B 键的情况下
    if Input.trigger?(Input::B)
      # 演奏取消 SE
      $game_system.se_play($data_system.cancel_se)
      # 设置个数输入窗口为不活动·非可视状态
      @number_window.active = false
      @number_window.visible = false
      # 命令窗口光标位置分支
      case @command_window.index
      when 0  # 购买
        # 窗口状态转向购买模式
        @buy_window.active = true
        @buy_window.visible = true
      when 1  # 卖出
        # 窗口状态转向卖出模式
        @sell_window.active = true
        @sell_window.visible = true
        @status_window.visible = false
      end
      return
    end
    # 按下 C 键的情况下
    if Input.trigger?(Input::C)
      # 演奏商店 SE
      $game_system.se_play($data_system.shop_se)
      # 设置个数输入窗口为不活动·非可视状态
      @number_window.active = false
      @number_window.visible = false
      # 命令窗口光标位置分支
      case @command_window.index
      when 0  # 购买
        # 设置购买标志
        $game_temp.bought = true
        # 购买处理
        $game_party.lose_gold(@number_window.number * @item.price)
        case @item
        when RPG::Item
          $game_party.gain_item(@item.id, @number_window.number)
        when RPG::Weapon
          $game_party.gain_weapon(@item.id, @number_window.number)
        when RPG::Armor
          $game_party.gain_armor(@item.id, @number_window.number)
        end
        # 刷新各窗口
        @gold_window.refresh
        @buy_window.refresh
        @status_window.refresh
        # 窗口状态转向购买模式
        @buy_window.active = true
        @buy_window.visible = true
      when 1  # 卖出
        # 卖出处理
        $game_party.gain_gold(@number_window.number * (@item.price / 2))
        case @item
        when RPG::Item
          $game_party.lose_item(@item.id, @number_window.number)
        when RPG::Weapon
          $game_party.lose_weapon(@item.id, @number_window.number)
        when RPG::Armor
          $game_party.lose_armor(@item.id, @number_window.number)
        end
        # 刷新各窗口
        @gold_window.refresh
        @sell_window.refresh
        @status_window.refresh
        # 窗口状态转向卖出模式
        @sell_window.active = true
        @sell_window.visible = true
        @status_window.visible = false
      end
      return
    end
  end
end[/pre]
然后使用事件的时候,可以进行条件分歧。
条件分歧:脚本:$game_temp.bought
   "谢谢惠顾"
以外的情况
   "不买东西还来干啥"
分歧结束
回复

使用道具 举报

梦石
0
星屑
431
在线时间
403 小时
注册时间
2014-9-6
回帖
1212
 楼主| 发表于 2014-9-14 20:46:45 | 显示全部楼层
莫言别离 发表于 2014-9-14 20:08
VA的话我会这么弄...
第一个我要买勾上只允许购买
第二个我要卖添加一个空白商品。 ...

囧魂裏是這樣弄的,我一步一步的照做了,為什麼只會顯示沒買的狀況下?
那些腳本是FUKI對話框的顯示選項。
QQ截图20140914204444.png

点评

不知道,我不怎么会Xp....  发表于 2014-9-14 20:48
大家好,我今年24岁,是学生
回复

使用道具 举报

梦石
0
星屑
431
在线时间
403 小时
注册时间
2014-9-6
回帖
1212
 楼主| 发表于 2014-9-14 20:48:15 | 显示全部楼层
RyanBern 发表于 2014-9-14 20:46
借助一点脚本即可。
class Game_Temp
  attr_accessor :bought

上面的腳本是放在事件裏還是腳本編輯器裏呢

点评

脚本编辑器,Main组之前。后面那个条件分歧是事件里面的。  发表于 2014-9-14 20:49
大家好,我今年24岁,是学生
回复

使用道具 举报

梦石
0
星屑
50
在线时间
206 小时
注册时间
2014-2-8
回帖
378
发表于 2014-9-14 20:50:23 | 显示全部楼层
在购买东西后打开开关A,然后在退出商店时判断开关的打开来显示文章,最好也用脚本写
刚接触RPG的新人们裤艾来这里!在这里能够帮助你们提高自身的能力,让大家来帮助每个人实现自己的创意、构想!
也许你只是正在看RPG教程的新人,或者是正在努力学着制作自己的RPG的制作者,或者是狂热的RPG游戏喜爱者,
但都不重要!
加入我们,我们会帮助你实现梦想,或者帮助你更好的运用RPG并且创造个人的一片天地!周末我们会不定时间开放RM技术讨论活动或者RM经验交流课!
加入我们,我们愿意与你共同创造奇迹,共同进步!
QQ群号:329443038  
或者联系QQ:573932914
我们和你站在同一线!
要求只有:常能上线
我们会用十分的热情接纳你!
回复

使用道具 举报

梦石
0
星屑
431
在线时间
403 小时
注册时间
2014-9-6
回帖
1212
 楼主| 发表于 2014-9-14 20:59:20 | 显示全部楼层
RyanBern 发表于 2014-9-14 20:46
借助一点脚本即可。
class Game_Temp
  attr_accessor :bought

這個有點看不太懂,能發個範例過來麼?
大家好,我今年24岁,是学生
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部