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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: sakazaki
打印 上一主题 下一主题

[已经解决] 關於腳本"帶入變量"的寫法?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
94 小时
注册时间
2013-1-24
帖子
149
11
 楼主| 发表于 2013-3-10 22:17:25 | 只看该作者
黄亦天 发表于 2013-3-10 20:52
不知道可不可行

BB_TYPE 这个是默认的模式



看不懂錯在哪Q_Q
回复 支持 反对

使用道具 举报

Lv2.观梦者 (暗夜天使)

梦石
0
星屑
266
在线时间
2355 小时
注册时间
2009-3-13
帖子
2309

贵宾

12
发表于 2013-3-10 23:12:47 | 只看该作者
本帖最后由 Sion 于 2013-3-10 23:18 编辑

把常量换成变量,这是一个例子:
  1. module Test
  2.   @fuck_number = 1
  3.   def self.get_number # 获取@fuck_number
  4.     @fuck_number
  5.   end
  6.   def self.number=(arg) # 修改@fuck_number
  7.     @fuck_number = arg
  8.   end
  9. end

  10. p Test.get_number #=> 1
  11. Test.number = 5
  12. p Test.get_number #=> 5
复制代码
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
94 小时
注册时间
2013-1-24
帖子
149
13
 楼主| 发表于 2013-3-10 23:20:17 | 只看该作者
Sion 发表于 2013-3-10 23:12
把常量换成变量,这是一个例子:

可否請問,這該如何套用到那個戰鬥背景腳本?

点评

那也行,方法名去掉=(arg),下面的arg改成$game_variables[1]  发表于 2013-3-10 23:49
(arg)就是($game_variables[1])嗎?我是要用變量去修改  发表于 2013-3-10 23:42
全局搜索 BB_TYPE ,全部换成@xxxxxxx(你自己起个名字。要修改这个@xxxxx的值就参考上面的例子。  发表于 2013-3-10 23:22
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
94 小时
注册时间
2013-1-24
帖子
149
14
 楼主| 发表于 2013-3-10 23:55:59 | 只看该作者
sakazaki 发表于 2013-3-10 23:20
可否請問,這該如何套用到那個戰鬥背景腳本?

會跳錯誤Q_Q

@fuck_number = 1 # 在这里输入上面提到的编号
module Test
  @fuck_number = 1
  def self.get_number # 获取@fuck_number
    @fuck_number
  end
  def self.number= $game_variables[16]  # 修改@fuck_number
    @fuck_number = $game_variables[16]
  end
end

p Test.get_number #=> 1
Test.number = 5
p Test.get_number #=> 5

点评

不好意思Q_Q,我完全不會腳本,頂多只會這邊剪剪那邊貼貼,嗚~~~~~~~~  发表于 2013-3-11 13:58
其实你直接把那个脚本里的 BB_TYPE 全部换成$game_variables[1] 就可以了吧.......  发表于 2013-3-11 13:44
你是怎么用的啊。方法定义、调用什么的你要先弄清楚才行,那个例子不是直接给你复制粘贴的。  发表于 2013-3-11 12:32
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
4422
在线时间
1911 小时
注册时间
2010-12-21
帖子
2365
15
发表于 2013-3-11 06:21:39 | 只看该作者
sakazaki 发表于 2013-3-10 22:17
看不懂錯在哪Q_Q

嘛 如果能发工程作为参考的话就比较好办了
绿坝娘素材库企划

素材库获取方法:暂时中止,需求者私聊。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1257
在线时间
423 小时
注册时间
2011-6-30
帖子
497
16
发表于 2013-3-11 07:49:55 | 只看该作者
本帖最后由 0newing 于 2013-3-11 13:02 编辑

我也来说两句吧,你把第37行的case BB_TYPE改成case $game_variables[BattleBack::BB_TYPE]
这样的话原先你想改的那个数字就是第X号变量的数字(具体几号变量在第16行进行定义)表示之前也遇到过相同问题。。。
你最好再检查下我单词有没有拼错。。。

------------------------------------------------------------不能连帖,我就编辑了------------------------------------------------------------------
  1. #==============================================================================
  2. # ■ VX-RGSS2 改变战斗背景 [版本.1.0.0]     by Claimh
  3. #------------------------------------------------------------------------------
  4. # 英语翻译 By: Elemental Crisis [[url]http://www.rpgcrisis.net[/url]]
  5. # 中文翻译 By: zero2 [[url]http://www.66rpg.com[/url]]
  6. #------------------------------------------------------------------------------
  7. # 改变战斗的背景图.
  8. #==============================================================================


  9. module BattleBack
  10. #   选择战斗背景
  11. #   0:当前地图的战斗背景,为战斗背景(默认VX的样式)
  12. #   1:目前使用的地图作为战斗背景
  13. #   2:使用自己的图片,为战斗背景
  14. BB_TYPE = 1 # 在这里输入上面提到的编号

  15. # 显示战斗地面
  16. BT_FLOOR = false

  17. # 使用的图片(如果你选择的编号为2)
  18. M_B_BACK = {
  19.    # 地图编号 => "(Graphics/System/图片名)"
  20.   1 => "2",
  21.   2 => "2",
  22. }
  23. end


  24. #==============================================================================
  25. # ■ Spriteset_Battle
  26. #==============================================================================
  27. class Spriteset_Battle
  28. #--------------------------------------------------------------------------
  29. # ● Creating Battle Back Sprite
  30. #--------------------------------------------------------------------------
  31. def create_battleback
  32.   case $game_variables[BattleBack::BB_TYPE]
  33.   when 0
  34.     source = $game_temp.background_bitmap
  35.     bitmap = Bitmap.new(640, 480)
  36.     bitmap.stretch_blt(bitmap.rect, source, source.rect)
  37.     bitmap.radial_blur(90, 12)
  38.     @battleback_sprite = Sprite.new(@viewport1)
  39.     @battleback_sprite.bitmap = bitmap
  40.     @battleback_sprite.ox = 320
  41.     @battleback_sprite.oy = 240
  42.     @battleback_sprite.x = 272
  43.     @battleback_sprite.y = 176
  44.     @battleback_sprite.wave_amp = 8
  45.     @battleback_sprite.wave_length = 240
  46.     @battleback_sprite.wave_speed = 120
  47.   when 1
  48.     source = $game_temp.background_bitmap
  49.     bitmap = Bitmap.new(640, 480)
  50.     bitmap.stretch_blt(bitmap.rect, source, source.rect)
  51.     @battleback_sprite = Sprite.new(@viewport1)
  52.     @battleback_sprite.bitmap = bitmap
  53.     @battleback_sprite.ox = 320
  54.     @battleback_sprite.oy = 240
  55.     @battleback_sprite.x = 272
  56.     @battleback_sprite.y = 176
  57.   when 2
  58.     @battleback_sprite = BattleBackSprite.new(@viewport1)
  59.   end
  60. end
  61. #--------------------------------------------------------------------------
  62. # ● Creating Battle Floor Sprite
  63. #--------------------------------------------------------------------------

  64. def create_battlefloor
  65.   create_battlefloor_mbb if BattleBack::BT_FLOOR
  66. end
  67. #--------------------------------------------------------------------------
  68. # ● Delete Battle Floor Sprite
  69. #--------------------------------------------------------------------------

  70. def dispose_battlefloor
  71.   dispose_battlefloor_mbb if BattleBack::BT_FLOOR
  72. end
  73. #--------------------------------------------------------------------------
  74. # ● Update Battle Floor Sprite
  75. #--------------------------------------------------------------------------

  76. def update_battlefloor
  77.   update_battlefloor_mbb if BattleBack::BT_FLOOR
  78. end
  79. end


  80. #==============================================================================
  81. # ■ BattleBackSprite
  82. #==============================================================================
  83. class BattleBackSprite < Sprite
  84. # Background Screen Size
  85. WIDTH  = 544.00
  86. HEIGHT = 288.00
  87. #--------------------------------------------------------------------------
  88. # ● Object Initialization
  89. #     viewport : viewport
  90. #--------------------------------------------------------------------------
  91. def initialize(viewport = nil)
  92.   super(viewport)
  93.   self.bitmap = Cache.system(BattleBack::M_B_BACK[$game_map.map_id])
  94.   # Zoom is carried out according to picture size.
  95.   @x_zoom = WIDTH / self.bitmap.width
  96.   @y_zoom = HEIGHT / self.bitmap.height
  97.   [url=home.php?mod=space&uid=98379]@zoom[/url] = @x_zoom > @y_zoom ? @x_zoom : @y_zoom
  98.   # Zoom is carried out.
  99.   self.zoom_x = @zoom
  100.   self.zoom_y = @zoom
  101.   # Made into central display.
  102.   self.ox = self.bitmap.width / 2
  103.   self.oy = self.bitmap.height / 2
  104.   self.x = (self.bitmap.width / 2)  * @zoom
  105.   self.y = (self.bitmap.height / 2) * @zoom
  106. end
  107. end
复制代码
这样应该就没问题了吧?测试过可以了……
还是不行吗?那我再贴上范例?!
Project1.zip (266.9 KB, 下载次数: 41)
注意脚本的第24、25行,那两行选择背景图片,范例里的是我临时涂鸦的……
还有在第16行选择由第几号变量来决定战斗背景……
还有脚本的第108行,直接用应该可能会出错……不知道为什么,本来是对的,一传上来就错了
要改成  (@zoom = @x_zoom > @y_zoom ? @x_zoom : @y_zoom)
@protosssonny   给糖吧……   

评分

参与人数 2星屑 +130 梦石 +1 收起 理由
怪蜀黍 + 100 + 1 认可答案
黄亦天 + 30 好评 虽然最多能给100 但是不敢给太多.

查看全部评分

点这里给我发邮件
有事欢迎给我发邮件哟~~
不出意外的话都会回复的哟~~~
邮箱:[email protected]
个人主页:curatorjin.github.io
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
94 小时
注册时间
2013-1-24
帖子
149
17
 楼主| 发表于 2013-3-11 14:41:19 | 只看该作者
0newing 发表于 2013-3-11 07:49
我也来说两句吧,你把第37行的case BB_TYPE改成case $game_variables
这样的话原先你想改的那个数字就是第 ...

終於OK鳥!!感恩!!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-22 21:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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