hx19900906 发表于 2010-1-31 15:39:23

转载——物品得失提示脚本。

效果是“得到物品失去物品自动提示”


2L上脚本
脚本是6R的……不知道这里有没有?
其实我主要是想请教脚本高手帮看看

提示的对话框提留时间在哪修改,默认的停留太短了。

hx19900906 发表于 2010-1-31 15:40:07

#==============================================================================
# 本腳本來自www.66RPG.com,使用和轉載請保留此信息
#==============================================================================

# 注意!!!在對話後得到物品,請在對話後先用事件等待3幀,否則對話框來不及消失。

# 開關定義:

$noshowgold = 41                        # 不显示金钱得失

$noshowitem = 42                        # 不显示物品得失

$noshowweapon = 43                      # 不显示武器得失

$noshowarmor = 44                     # 不显示防具得失
# 以上開關,當打開的時候,獲得物品將不會提示,比如默認打開41號開關,獲得金錢不再提示

# 不想提示等级升降时,就在事件命令直接选择是否显示就行了。

#——聲效,可以自己改
folder = "Audio/SE/"
$gain_gold_se   = folder +"Shop"      # 获得金钱声效
$loss_gold_se   = folder +"Blow2"   # 失去金钱声效

$gain_item_se   = folder +"Item1"   # 获得物品声效
$loss_item_se   = folder +"Blow2"   # 失去物品声效

$gain_weapon_se = folder +"Item1"   # 获得武器声效
$loss_weapon_se = folder +"Blow2"   # 失去武器声效

$gain_armor_se= folder +"Item1"   # 获得防具声效
$loss_armor_se= folder +"Blow2"   # 失去防具声效

$gain_lv_se   = folder +"Item1"   # 提升等级声效
$loss_lv_se   = folder +"Blow2"   # 降低等级声效

# ————————————————————————————————————

class Game_Interpreter
#--------------------------------------------------------------------------
# ● 增減金錢
#--------------------------------------------------------------------------
def command_125
    value = operate_value(@params, @params, @params)
    $game_party.gain_gold(value)
    if $game_switches[$noshowgold]==false
      show_gain_window(0, value)
    end
    return true
end
#--------------------------------------------------------------------------
# ● 增減物品
#--------------------------------------------------------------------------
def command_126
    value = operate_value(@params, @params, @params)
    $game_party.gain_item($data_items[@params], value)
    if $game_switches[$noshowitem]==false
      show_gain_window(1, value)
    end
    $game_map.need_refresh = true
    return true
end
#--------------------------------------------------------------------------
# ● 增減武器
#--------------------------------------------------------------------------
def command_127
    value = operate_value(@params, @params, @params)
    $game_party.gain_item($data_weapons[@params], value, @params)
    if $game_switches[$noshowweapon]==false
      show_gain_window(2, value)
    end
    return true
end
#--------------------------------------------------------------------------
# ● 增減防具
#--------------------------------------------------------------------------
def command_128
    value = operate_value(@params, @params, @params)
    $game_party.gain_item($data_armors[@params], value, @params)
    if $game_switches[$noshowarmor]==false
      show_gain_window(3, value)
    end
    return true
end

#--------------------------------------------------------------------------
# ● 等级増減
#--------------------------------------------------------------------------
def command_316
    value = operate_value(@params, @params, @params)
    iterate_actor_id(@params) do |actor|
      actor.change_level(actor.level + value, false)
      if @params
      show_gain_level_window(actor,value)
      end
    end
    return true
end


def show_gain_window(type, value)
    snstar2006_66rpg_item = $data_armors[@params]
    snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
    snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
    if value >= 0
      gain_text = "獲得"   
    else
      gain_text = "失去"
    end
   
    case type
    when 0
      gain_type = "金錢"
      if value >=0
      Audio.se_play($gain_gold_se,80,100)
      else
      Audio.se_play("Audio/SE/"+"Item1",80,100)
      end
    when 1
      gain_type = "物品"
      string = $data_items[@params]
      if value >=0
      Audio.se_play($gain_item_se,80,100)
      else
      Audio.se_play($loss_item_se,80,100)
      end
    when 2
      gain_type = "武器"
      string = $data_weapons[@params]
      if value >=0
      Audio.se_play($gain_weapon_se,80,100)
      else
      Audio.se_play($loss_weapon_se,80,100)
      end
    when 3
      gain_type = "防具"
      string = $data_armors[@params]
      if value >=0
      Audio.se_play($gain_armor_se,80,100)
      else
      Audio.se_play($loss_armor_se,80,100)
      end
    end
   
    snstar2006_66rpg.contents.draw_text(0,0,160,32,gain_text+gain_type+":")
   
    unless type == 0
      snstar2006_66rpg.draw_item_name(string, 28, 32, true)
      snstar2006_66rpg.contents.draw_text(0, 32, 150, 32, "×"+value.abs.to_s, 2)
    else
      snstar2006_66rpg.contents.draw_text(32,32,240,32,value.abs.to_s + ""+ Vocab::gold)
    end
   
    snstar2006_66rpg.opacity = 160
   
    for i in 0..30
      Graphics.update
    end
   
    for i in 0..10
      snstar2006_66rpg.opacity -= 30
      snstar2006_66rpg.contents_opacity -= 30
      Graphics.update
    end
   
    snstar2006_66rpg.dispose
end

def show_gain_level_window(actor,value)
    lvstring = Vocab::level
      
    snstar2006_66rpg = Window_Base.new((640-300)/2,128,200,100)
    snstar2006_66rpg.contents = Bitmap.new(snstar2006_66rpg.width - 32, snstar2006_66rpg.height - 32)
   
    if value >= 0
      gain_text = "提升"
      Audio.se_play($gain_lv_se,80,100)
    else
      gain_text = "降低"
      Audio.se_play($loss_lv_se,80,100)
    end
   
   
    snstar2006_66rpg.contents.draw_text(0, 0, 108, 32, actor.name)
    string = lvstring+gain_text+value.abs.to_s+"级"
    snstar2006_66rpg.contents.draw_text(32,32,160,32,string)

    snstar2006_66rpg.opacity = 160
   
    for i in 0..30
      Graphics.update
    end
   
    for i in 0..10
      snstar2006_66rpg.opacity -= 30
      snstar2006_66rpg.contents_opacity -= 30
      Graphics.update
    end
   
    snstar2006_66rpg.dispose

end
end



#==============================================================================
# 本腳本來自www.66RPG.com,使用和轉載請保留此信息
#==============================================================================

secondsen 发表于 2010-1-31 20:58:47

第一次看到转载的脚本发到这的,观望

小睡 发表于 2010-1-31 21:24:16

想要VX的……
还要慢慢改……哎

secondsen 发表于 2010-2-1 08:59:31

依样画葫芦,下午给你看看我的。

hx19900906 发表于 2010-2-1 13:25:39

话说…………这就是VX的!…………?

第一次转载?
那我再发几个吧,可怜6R关了,来不及备份大量脚本…………痛苦啊

secondsen 发表于 2010-2-1 19:49:03

还是和你那个帖子一样的问题。。作者是谁,得到许可了么?

secondsen 发表于 2010-2-1 19:53:32

小睡,看图。。这个是得到物品,自己选择留下哪一个。

basara-spike 发表于 2011-2-10 11:29:46

经xp测试,无效……
页: [1]
查看完整版本: 转载——物品得失提示脚本。