设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 5137|回复: 9
打印 上一主题 下一主题

[已经解决] VA多背包脚本

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2013-5-18
帖子
18
跳转到指定楼层
发表于 2013-7-8 19:10:40 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
求VA的多背包脚本,希望各位大神帮忙下

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9414 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

9
发表于 2013-7-9 20:12:16 | 只看该作者
仔细一看发现都是新方法移植起来意外的简单,就是替换一段def的事…………

没有经过太详细测试,有错再说

RUBY 代码复制
  1. #==============================================================================
  2. # ■ RMVA 简易多背包系统(VX移植)
  3. #------------------------------------------------------------------------------
  4. #
  5. #   本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  6. #
  7. #   作者:protosssonny   
  8. #   移植:喵呜喵5
  9. #
  10. #==============================================================================
  11.  
  12. #==============================================================================
  13. # ■ 使用方法:
  14. #        首先要设定背包的总数,本脚本中默认是3个背包。
  15. #        使用事件以下脚本命令来调用,具体使用可以见本范例:
  16. #            load_package(n)       #切换到n号背包
  17. #            clear_package(n)      #清空n号背包以及n号背包的物品、金钱储存信息
  18. #            package_to_another(n) #将n号背包的物品、金钱转移到当前号背包中
  19. # ■ 注意事项:
  20. #        本脚本是使用变量来储存背包信息的,您的背包系统最多有n个背包,
  21. #        那么1000号至1000+3*n号变量请勿使用。
  22. #        例如,本脚本默认背包是3个,所以1000至1009号变量不能再使用。
  23. #
  24. #==============================================================================
  25. #
  26. #
  27. #请在这里设定总背包数:
  28. PACKAGES = 3
  29. #==============================================================================
  30. # ■ Scene_Title
  31. #------------------------------------------------------------------------------
  32. #  处理标题画面的类。
  33. #==============================================================================
  34.  
  35. class Scene_Title < Scene_Base
  36.  
  37.   #--------------------------------------------------------------------------
  38.   # ● 指令 : 新游戏
  39.   #--------------------------------------------------------------------------
  40. =begin
  41.   def command_new_game
  42.     variable_initialize
  43.     confirm_player_location
  44.     Sound.play_decision
  45.     $game_party.setup_starting_members            # 初期同伴
  46.     $game_map.setup($data_system.start_map_id)    # 初期地图位置
  47.     $game_player.moveto($data_system.start_x, $data_system.start_y)
  48.     $game_player.refresh
  49.     $scene = Scene_Map.new
  50.     RPG::BGM.fade(1500)
  51.     close_command_window
  52.     Graphics.fadeout(60)
  53.     Graphics.wait(40)
  54.     Graphics.frame_count = 0
  55.     RPG::BGM.stop
  56.     $game_map.autoplay
  57.   end
  58. =end
  59.  
  60.   def command_new_game
  61.     DataManager.setup_new_game
  62.     close_command_window
  63.     fadeout_all
  64.     $game_map.autoplay
  65.     SceneManager.goto(Scene_Map)
  66.     variable_initialize
  67.   end
  68.  
  69.   #--------------------------------------------------------------------------
  70.   # ● 初始化背包变量
  71.   #--------------------------------------------------------------------------
  72.   def variable_initialize
  73.     $game_variables[1000] = 1                     #默认情况下背包1是当前背包
  74.     for i in 1..3*PACKAGES
  75.       $game_variables[1000+i] = [0,0,0]
  76.       for j in 0..999
  77.         $game_variables[1000+i][j] = 0
  78.       end
  79.     end
  80.   end  
  81. end
  82. #==============================================================================
  83. # ■ Game_Interpreter
  84. #------------------------------------------------------------------------------
  85. #  执行事件命令的解释器。本类在 Game_Map 类、Game_Troop 类、
  86. # Game_Event 类的内部使用。
  87. #==============================================================================
  88.  
  89. class Game_Interpreter
  90.   #--------------------------------------------------------------------------
  91.   # ● 当清空n号背包物品、金钱及其存档
  92.   #--------------------------------------------------------------------------
  93.   def clear_package(n)
  94.     for i in 1..999
  95.       $game_variables[998+3*n][i] = 0
  96.       $game_variables[999+3*n][i] = 0
  97.       $game_variables[1000+3*n][i] = 0      
  98.     end
  99.     for i in 1..999
  100.       $game_party.gain_item($data_weapons[i],-999,false)
  101.       $game_party.gain_item($data_armors[i],-999,false)
  102.       $game_party.gain_item($data_items[i],-999)
  103.     end
  104.     $game_variables[998+3*n][0] = 0
  105.     $game_party.gain_gold($game_variables[998+3*n][0] - $game_party.gold)
  106.   end
  107.   #--------------------------------------------------------------------------
  108.   # ● 当前背包的物品存档
  109.   #--------------------------------------------------------------------------
  110.   def save_package(n)
  111.     for i in 1..999
  112.       $game_variables[998+3*n][i] = $game_party.item_number($data_weapons[i])
  113.       $game_variables[999+3*n][i] = $game_party.item_number($data_armors[i])
  114.       $game_variables[1000+3*n][i] = $game_party.item_number($data_items[i])
  115.     end
  116.     $game_variables[998+3*n][0] = $game_party.gold
  117.   end  
  118.   #--------------------------------------------------------------------------
  119.   # ● 切换到n号背包
  120.   #--------------------------------------------------------------------------
  121.   def load_package(n)
  122.     if $game_variables[1000] == n
  123.       $game_message.texts.push("无法切换,已经是当前背包!")
  124.     end
  125.     save_package($game_variables[1000])
  126.     $game_variables[1000] = n
  127.     for i in 1..999
  128.       $game_party.gain_item($data_weapons[i],-999,false)
  129.       $game_party.gain_item($data_armors[i],-999,false)
  130.       $game_party.gain_item($data_items[i],-999)
  131.     end
  132.     for j in 1..999
  133.       $game_party.gain_item($data_weapons[j],$game_variables[998+3*n][j],false)
  134.       $game_party.gain_item($data_armors[j],$game_variables[999+3*n][j],false)
  135.       $game_party.gain_item($data_items[j],$game_variables[1000+3*n][j])
  136.     end
  137.     $game_party.gain_gold($game_variables[998+3*n][0] - $game_party.gold)
  138.   end
  139.   #--------------------------------------------------------------------------
  140.   # ● 将n号背包的物品、金钱转移到当前号背包中
  141.   #--------------------------------------------------------------------------
  142.   def package_to_another(n)
  143.     save_package($game_variables[1000])
  144.     for j in 1..999
  145.       $game_party.gain_item($data_weapons[j],$game_variables[998+3*n][j],false)
  146.       $game_party.gain_item($data_armors[j],$game_variables[999+3*n][j],false)
  147.       $game_party.gain_item($data_items[j],$game_variables[1000+3*n][j])
  148.     end
  149.     $game_party.gain_gold($game_variables[998+3*n][0])
  150.     save_package($game_variables[1000])
  151.   end
  152. end  
  153.  
  154. #------------------------------------------------------------------------------
  155. #
  156. #   本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  157. #
  158. #                                                          作者:protosssonny   
  159. #                                                             2011年9月23日
  160. #==============================================================================

点评

厉害  发表于 2013-7-9 20:37

评分

参与人数 2星屑 +30 梦石 +1 收起 理由
迷糊的安安 + 1 认可答案 附赠66RPG提供的精美好人卡一张^^.
weixun + 30 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2013-5-18
帖子
18
8
 楼主| 发表于 2013-7-9 17:51:47 | 只看该作者
可以帮我看看吗
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2013-5-18
帖子
18
7
 楼主| 发表于 2013-7-9 17:51:24 | 只看该作者
#==============================================================================
# ■ 简易多背包系统
#------------------------------------------------------------------------------
#
#   本脚本来自,使用和转载请保留此信息
#
#   作者:protosssonny   
#
#==============================================================================

#==============================================================================
# ■ 使用方法:
#        首先要设定背包的总数,本脚本中默认是3个背包。
#        使用事件以下脚本命令来调用,具体使用可以见本范例:
#            load_package(n)       #切换到n号背包
#            clear_package(n)      #清空n号背包以及n号背包的物品、金钱储存信息
#            package_to_another(n) #将n号背包的物品、金钱转移到当前号背包中
# ■ 注意事项:
#        本脚本是使用变量来储存背包信息的,您的背包系统最多有n个背包,
#        那么1000号至1000+3*n号变量请勿使用。
#        例如,本脚本默认背包是3个,所以1000至1009号变量不能再使用。
#
#==============================================================================
#
#
#请在这里设定总背包数:
PACKAGES = 3
#==============================================================================
# ■ Scene_Title
#------------------------------------------------------------------------------
#  处理标题画面的类。
#==============================================================================

class Scene_Title < Scene_Base
  
  #--------------------------------------------------------------------------
  # ● 指令 : 新游戏
  #--------------------------------------------------------------------------
  def command_new_game
    variable_initialize
    confirm_player_location
    Sound.play_decision
    $game_party.setup_starting_members            # 初期同伴
    $game_map.setup($data_system.start_map_id)    # 初期地图位置
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    $game_player.refresh
    $scene = Scene_Map.new
    RPG::BGM.fade(1500)
    close_command_window
    Graphics.fadeout(60)
    Graphics.wait(40)
    Graphics.frame_count = 0
    RPG::BGM.stop
    $game_map.autoplay
  end
  
  #--------------------------------------------------------------------------
  # ● 初始化背包变量
  #--------------------------------------------------------------------------
  def variable_initialize
    $game_variables[1000] = 1                     #默认情况下背包1是当前背包
    for i in 1..3*PACKAGES
      $game_variables[1000+i] = [0,0,0]
      for j in 0..999
        $game_variables[1000+i][j] = 0
      end
    end
  end  
end
#==============================================================================
# ■ Game_Interpreter
#------------------------------------------------------------------------------
#  执行事件命令的解释器。本类在 Game_Map 类、Game_Troop 类、
# Game_Event 类的内部使用。
#==============================================================================

class Game_Interpreter
  #--------------------------------------------------------------------------
  # ● 当清空n号背包物品、金钱及其存档
  #--------------------------------------------------------------------------
  def clear_package(n)
    for i in 1..999
      $game_variables[998+3*n][i] = 0
      $game_variables[999+3*n][i] = 0
      $game_variables[1000+3*n][i] = 0      
    end
    for i in 1..999
      $game_party.gain_item($data_weapons[i],-999,false)
      $game_party.gain_item($data_armors[i],-999,false)
      $game_party.gain_item($data_items[i],-999)
    end
    $game_variables[998+3*n][0] = 0
    $game_party.gain_gold($game_variables[998+3*n][0] - $game_party.gold)
  end
  #--------------------------------------------------------------------------
  # ● 当前背包的物品存档
  #--------------------------------------------------------------------------
  def save_package(n)
    for i in 1..999
      $game_variables[998+3*n][i] = $game_party.item_number($data_weapons[i])
      $game_variables[999+3*n][i] = $game_party.item_number($data_armors[i])
      $game_variables[1000+3*n][i] = $game_party.item_number($data_items[i])
    end
    $game_variables[998+3*n][0] = $game_party.gold
  end  
  #--------------------------------------------------------------------------
  # ● 切换到n号背包
  #--------------------------------------------------------------------------
  def load_package(n)
    if $game_variables[1000] == n
      $game_message.texts.push("无法切换,已经是当前背包!")
    end
    save_package($game_variables[1000])
    $game_variables[1000] = n
    for i in 1..999
      $game_party.gain_item($data_weapons[i],-999,false)
      $game_party.gain_item($data_armors[i],-999,false)
      $game_party.gain_item($data_items[i],-999)
    end
    for j in 1..999
      $game_party.gain_item($data_weapons[j],$game_variables[998+3*n][j],false)
      $game_party.gain_item($data_armors[j],$game_variables[999+3*n][j],false)
      $game_party.gain_item($data_items[j],$game_variables[1000+3*n][j])
    end
    $game_party.gain_gold($game_variables[998+3*n][0] - $game_party.gold)
  end
  #--------------------------------------------------------------------------
  # ● 将n号背包的物品、金钱转移到当前号背包中
  #--------------------------------------------------------------------------
  def package_to_another(n)
    save_package($game_variables[1000])
    for j in 1..999
      $game_party.gain_item($data_weapons[j],$game_variables[998+3*n][j],false)
      $game_party.gain_item($data_armors[j],$game_variables[999+3*n][j],false)
      $game_party.gain_item($data_items[j],$game_variables[1000+3*n][j])
    end
    $game_party.gain_gold($game_variables[998+3*n][0])
    save_package($game_variables[1000])
  end
end  

#------------------------------------------------------------------------------
#
#   本脚本来自,使用和转载请保留此信息
#
#                                                          作者:protosssonny   
#                                                             2011年9月23日
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

6
发表于 2013-7-9 17:41:08 | 只看该作者
VX的脚本绝大多数都可以直接在VA上用

点评

VX的绝大多数脚本都不可以直接在VA上用吧……  发表于 2013-7-9 19:51
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2013-5-18
帖子
18
5
 楼主| 发表于 2013-7-9 17:13:00 | 只看该作者
我不懂脚本
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
416 小时
注册时间
2012-11-30
帖子
162
4
发表于 2013-7-9 12:07:51 | 只看该作者
不解释,跟你讲的VX应该一个方法

<object width="630" height="500" align="middle" id="reader" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" classid="clsid:d27cdb6e-ae6d-11cf-96b8-44455354000
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
29 小时
注册时间
2013-5-18
帖子
18
3
 楼主| 发表于 2013-7-8 21:58:46 | 只看该作者
http://rpg.blue/forum.php?mod=viewthread&tid=210189一样不过那个是VX的不能给VA用
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
284
在线时间
271 小时
注册时间
2013-4-23
帖子
143
2
发表于 2013-7-8 21:33:11 | 只看该作者
什麼叫多背包
你是說多開物品種類之類嗎?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 03:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表