注册会员 登录
Project1 返回首页

喵呜喵5的树洞 https://rpg.blue/?291206 [收藏] [复制] [分享] [RSS]

日志

【脚本】变量商店

热度 24已有 3305 次阅读2013-9-26 18:22 |个人分类:脚本

=begin
===============================================================================
  变量商店 By喵呜喵5
===============================================================================

【说明】

  可以使用变量在商店进行购物

  首先先在事件中使用脚本命令输入

    m5_20160528_shop(变量的ID,"变量的名称")

  例如:m5_20160528_shop(1,"节操")

  若事件指令中下一条指令为商店处理,则进入商店时购买物品消耗的是对应的变量

=end
$m5script ||= {}; $m5script[:M5VS20160528] = 20160528
module M5VS20160528
#==============================================================================
#  设定部分
#==============================================================================

  EQUAL = false

  # 设置为 true 时,变量商店物品的出售价格为【数据库中】物品售价的一半
  # 设置为 false 时,变量商店物品的出售价格为【该商店】物品售价的一半
  # (一般来说,个人建议将变量商店请设置为只允许购买)

#==============================================================================
#  设定结束
#==============================================================================
  def self.init; set(0, nil); end
  def self.gold; @data[0]; end
  def self.unit; @data[1]; end
  def self.set(gold, unit); @data = [gold, unit]; end
  def self.work(&block)
    origin_gold = $game_party.gold
    $game_party.m5_20160528_set_gold($game_variables[gold]) if unit
    block.call
    return unless unit
    $game_variables[gold] = $game_party.gold
    $game_party.m5_20160528_set_gold(origin_gold)
  end
end
M5VS20160528.init
class Game_Interpreter
  def m5_20160528_shop(gold, unit)
    return unless next_event_code == 302
    M5VS20160528.set(gold, unit)
    @index += 1
    execute_command
    M5VS20160528.init
  end
end
class Window_Gold
  alias m5_20160528_value value
  def value
    M5VS20160528.unit ? $game_variables[M5VS20160528.gold] : m5_20160528_value
  end
  alias m5_20160528_unit currency_unit
  def currency_unit; M5VS20160528.unit || m5_20160528_unit; end
end
class Game_Party; def m5_20160528_set_gold(gold); @gold = gold; end; end
class Scene_Shop
  alias m5_20140318_do_buy do_buy
  def do_buy(number); M5VS20160528.work{ m5_20140318_do_buy(number) }; end
  alias m5_20140318_do_sell do_sell
  def do_sell(number); M5VS20160528.work{ m5_20140318_do_sell(number) }; end
  alias m5_20140318_selling_price selling_price
  def selling_price
    return m5_20140318_selling_price unless M5VS20160528.unit
    return m5_20140318_selling_price if M5VS20160528::EQUAL
    p = buying_price || 0
    p / 2
  end
end
8

鸡蛋

鲜花

刚表态过的朋友 (8 人)

发表评论 评论 (2 个评论)

回复 绿坝 2013-10-9 12:38
收藏了,好东西,可以用作赌场或者功勋的兑换。
回复 Vortur 2016-8-20 16:50
拿去学习啦~喵大最帅!

facelist doodle 涂鸦笔

您需要登录后才可以评论 登录 | 注册会员

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-6 08:10

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

返回顶部