赞 | 11 |
VIP | 302 |
好人卡 | 162 |
积分 | 62 |
经验 | 108302 |
最后登录 | 2025-1-11 |
在线时间 | 6595 小时 |
Lv4.逐梦者 醉啸 长风万里
- 梦石
- 0
- 星屑
- 6202
- 在线时间
- 6595 小时
- 注册时间
- 2007-12-16
- 帖子
- 4501
|
- #==============================================================================
- # ★ 加强型字幕脚本(VX)
- #------------------------------------------------------------------------------
- # by 八云 紫
- #==============================================================================
- =begin
- 写在前面:
- 脚本有点点复杂, 使用时请仔细看看本说明.
- 使用说明:
- 1. 请将脚本放到 Main 之前,设定后即可使用
- 2. 设定部分的说明请看 Credit_Config 模块的说明
- 3. 有什么 BUG , 请联系咱, 6R ID 是 八云紫
- 4. 有什么建议也请联系咱
- =end
- =begin
- 字幕快捷命令说明:
- 1. <C,r,g,b>文字</C> 或者 <c,r,g,b>文字</c>
- 文字变色, 其中 C/c 属于关键字, 必须有. r,g,b 是三原色的值, 十六进制
- 比如 <c,FF,AB,3D>文字</C>
-
- 2. <g,x,y>文字</g> 或者 <G,x,y>文字</G>
- 文字阴影, G/g 属于关键字, 必须有. x, y 为阴影文字对于主文字的偏移坐标
- 比如 <G,3,3>文字</g>
-
- 3. <p,name> 或者 <P,name>
- 显示图片, P/p 属于关键字, 必须有. name 是图片的文件名, 不包含 "" 部分.
- 图片放在 Graphics/Pictures/
- 比如 <p,Cave>
-
- 4. <D,dbase,id,att> 或者 <d,dbase,id,att>
- 显示数据库信息, D/d 属于关键字, 必须有.
- 1) dbase
- 数据库名,包含以下几个
- actor 基础角色
- classe 职业
- skill 技能
- item 物品
- weapon 武器
- armor 装备
- enemie 敌人
- troop 敌人队伍
- state 状态
- map 地图信息(不包含事件)
- animation 动画
- common_event 公共事件
- system 系统
- area 区域
-
- # 使用一下指令,请先确定字幕脚本是在游戏进行中运行
- switche 开关
- variable 变量
- self_switche 独立开关
- actors 游戏中的角色信息
- party 队伍
- player 主角
-
- 2) id
- 以上指令的 ID
-
- 3) att
- 属性名, 这里请参照 F1 里以上各类的属性说明.
-
- 5. 脚本调用说明
- $scene = Scene_Credit.new(creditIndex = 0, endType = 0, endTime = 0)
- 其中:
- creditIndex : 字幕方案序号
- endType : 字幕结束类型
- endTime : 字幕结束时间
-
- 6. 对 [x移动像素,帧数] 的说明
- 为了使字幕移动更趋于缓慢, 对速度做如下定义.
- [x移动像素,帧数]
- 比如: [5,4] ,意思是, 每 4 帧移动
-
- 这里需要注意的是, [4,2] 和 [2,1] 这样类似定义的区别
- 后者 [2,1] 使的字幕移动更平滑.
-
-
- 7. 剩下的, 请参照 Credit_Config 配置模块
- =end
- #==============================================================================
- # ■ Credit_Config (Module)
- #------------------------------------------------------------------------------
- # Scene_Credit 配置模块
- #==============================================================================
- module Credit_Config
- #--------------------前缀设定(勿动)-----------------------
- CREDIT = []
- SET_VIEWPORT = []
- START_LOCATION = []
- BACK_EXCHANGE_BITMAP = []
- CREDIT_SPEED = []
- BGM_ECHANG = []
- BACK_SCENE_CLASS_NAME = []
- #------------------第一次字幕活动设定---------------------
- @@index = 0
- # 字幕内容.
- CREDIT[@@index] =
- ' 加强型字幕脚本(<c,25,EE,FF>VX</c>)
- by <c,25,43,FF>八云 紫</c>
- 写在前面:
- 脚本有点点复杂, 使用时请仔细看看本说明.
- 使用说明:
- 1. 请将脚本放到 <g,2,2>主处理</g> 之前,设定后即可使用
- 2. 设定部分的说明请看 Credit_Config 模块的说明
- 3. 需要调用的地方$scene = Scene_Credit.new
- 序号, 结束类型, 结束时间)
- 4. 有什么 BUG或建议 , 请联系咱, 6R ID 是 八云紫
- 5. 不要关闭程序,里面还有范例的哦
- '
- # 字幕显示位置设定
- SET_VIEWPORT[@@index] = [
- # x , y, width, height
- 24, 0, 544, 500
- ]
-
- # 字幕开始方式设定, 相对于 SET_VIEWPORT(字幕显示位置设定)
- # 正数向右调整(X坐标)
- START_LOCATION[@@index] = [0, 416]
-
-
- # 背景图片替换与移动设定
- BACK_EXCHANGE_BITMAP[@@index] = {
- # 帧数 => [图片名, [x移动像素,帧数], [y移动速度,帧数], x, y]
- }
-
- # 字幕移动速度设定
- CREDIT_SPEED[@@index] = {
- # 帧数 => [[x移动像素,帧数], [y移动速度,帧数], 显示坐标x, y]
- 0 => [[0, 2], [1, 2], 0, 0],
- }
-
- # BGM 切换设定
- BGM_ECHANG[@@index] = {
- # 帧数 => [文件名, 音量, 音调, 淡出时间]
- 0 => ["Airship", 500, 500, 0],
- 90 => ["Battle1", 500, 500, 60],
- }
- BACK_SCENE_CLASS_NAME[@@index] =
- #[ 类名 ,[初始化参数]]
- ["Scene_Title",[]]
- #------------------第二次字幕活动设定---------------------
- @@index = 1
- # 字幕内容.
- CREDIT[@@index] =
- ' 这是一个没有人类记下历史的的封闭世界。
- 妖怪们无法准确记住过去,幻想乡里见不到真实。
- 因为这样,不了解妖怪的实态,人类只有害怕的
- 份儿。
- 若能更了解妖怪的能力和做出相应对策,回
- 避危险的地方,认识擅长退治妖怪的人类,那就
- 能不用战战兢兢地生活了吧。
- 我们稗田家,为了保障人类生活安全,从一
- 百二十至一百八十年,记下了惹人注目的妖怪,
- 这就是幻想乡缘起。从千年之前的阿一开始,传
- 到我已经是第九代了。
- 幻想乡缘起分为妖怪图鉴,英雄传,危险区
- 域向导,未解决资料和独白。记下了幻想乡的实
- 态。
- 妖怪图鉴记录了各种妖怪种族的倾向和对策,
- 以及分别记录现存确定的妖怪。这是一项提防幻
- 想乡必需的妖怪,和不要招惹强力妖怪的指针。
- 从妖精、幽灵等容易遇上的妖怪,到天狗、吸血
- 鬼等强力妖怪,这里都会从能力、危险度、遭遇
- 时间、地点和遭遇频度上给予概括和记录,全都
- 带图。对村庄的人来说,是十分有用的。
- 英雄传是介绍是没有住在人类村庄,而能进
- 行退治妖怪、解决异变等的人的。基本上是人类
- 的同伴,若有被妖怪危害,可以找这些人商量。
- 她们多数有好多谜团,谜团总会解开的。
- 危险区域向导是记述幻想乡的主要地方,有
- 哪些是危险的,怎样危险,要去那些地方需要准
- 备什么。要有所准备,就一定要先读此书。从村
- 庄出来的话,那就更要仔细阅读。
- 未解决资料包括了不完整的资料,和幻想乡
- 不相容的东西,新闻等。这些都是预定要写入书
- 中的。
- 独白是我--第九代的阿求。<p,back2>
- 关于此书的感想,和对于幻想乡的一些想法。
- 看不看都不要紧,当然有人看我会很高兴的。
- 幻想乡缘起到此本,已是第九册了。为了让
- 更多人就算不喜欢难读的古书字体和晦涩的文章,
- 也能读懂此书,比起过去的幻想乡缘起,此书采
- 用了新鲜的风格,流行的设计和简易的文字。'
- # 字幕显示位置设定
- SET_VIEWPORT[@@index] = [
- # x , y, width, height
- 60, 0, 450, 500
- ]
-
- # 字幕开始方式设定, 相对于 SET_VIEWPORT(字幕显示位置设定)
- # 正数向右调整(X坐标)
- START_LOCATION[@@index] = [0, 0]
-
-
- # 背景图片替换与移动设定
- BACK_EXCHANGE_BITMAP[@@index] = {
- # 帧数 => [图片名, [x移动像素,帧数], [y移动速度,帧数], x, y]
- 0 => ["back", [-1, 10], [0, 0], 0, 0],
- }
-
- # 字幕移动速度设定
- CREDIT_SPEED[@@index] = {
- # 帧数 => [[x移动像素,帧数], [y移动速度,帧数], 显示坐标x, y]
- 0 => [[0, 1], [1, 1], 0, -416],
- }
-
- # BGM 切换设定
- BGM_ECHANG[@@index] = {
- # 帧数 => [文件名, 音量, 音调, 淡出时间]
- 0 => ["Airship", 500, 500, 0],
- 90 => ["Battle1", 500, 500, 60],
- }
-
- # 返回场景的脚本类名
- # 类名就是脚本里的类名
- # 参数列表这样填写,
- # 数字类的, [1, 3, 43], 参数顺序参照之前类名的 initialize 方法
- # 字符类的, ["\"121\"", "\"abc\""]
- BACK_SCENE_CLASS_NAME[@@index] =
- #[ 类名 ,[初始化参数]]
- ["Scene_Map",[]]
- end
- #==============================================================================
- # ■ Credit_Config (Module)
- #------------------------------------------------------------------------------
- # Scene_Credit 配置模块
- #==============================================================================
- module Credit_Config
- def self.getIndex()
- return @@index
- end
- end
- #==============================================================================
- # ■ Rect
- #------------------------------------------------------------------------------
- # 矩形的类。
- #==============================================================================
- class Rect
- #----------------------------------------------------------------------------
- # ■ collision 碰撞检测
- #----------------------------------------------------------------------------
- def collision?(rect2)
- minx = x > rect2.x ? x : rect2.x
- miny = y > rect2.y ? y : rect2.y
- maxx = x + width < rect2.x + rect2.width ? x + width : rect2.x + rect2.width
- maxy = y + height < rect2.y + rect2.height ? y + height : rect2.y + rect2.height
- if maxx > minx and maxy > miny
- return true
- end
- return false
- end
- end
- #==============================================================================
- # ■ Scene_Credit (Class)
- #------------------------------------------------------------------------------
- # 字幕场景类
- #==============================================================================
- class Scene_Credit < Scene_Base
- #--------------------------------------------------------------------------
- # ● 初始化
- # creditIndex : 字幕方案序号
- # endType : 字幕结束类型
- # endTime : 字幕结束时间
- #--------------------------------------------------------------------------
- def initialize(creditIndex = 0, endType = 0, endTime = 0)
- #------------------------------------------------------------------------
- # 背景图片精灵
- if creditIndex > Credit_Config.getIndex()
- p "序号太大, 最多只能到 #{Credit_Config.getIndex()}"
- exit
- end
- @backSprite = Sprite.new
- @backSprite.z = -500
- @backSpriteMoveX = 0
- @backSpriteMoveXS = 0
- @backSpriteMoveY = 0
- @backSpriteMoveYS = 0
- #------------------------------------------------------------------------
- # 显示窗口
- @viewportMoveOx = 0
- @viewportMoveOxS = 0
- @viewportMoveOy = 0
- @viewportMoveOyS = 0
- @spriteArray = []
- vx = Credit_Config::SET_VIEWPORT[creditIndex][0]
- vy = Credit_Config::SET_VIEWPORT[creditIndex][1]
- vw = Credit_Config::SET_VIEWPORT[creditIndex][2]
- vh = Credit_Config::SET_VIEWPORT[creditIndex][3]
- @viewport = Viewport.new(vx, vy, vw, vh)
- #------------------------------------------------------------------------
- # 其他
- @rect_a = @viewport.rect.clone
- @creditIndex = creditIndex
- @endType = endType
- @endTime = endTime
- @spriteLocal = Sprite.new(@viewport)
- @new_color = Color.new(255, 255, 255)
- @credit = Credit_Config::CREDIT[creditIndex].clone
- createReturnClass()
- load_database()
- end
- #--------------------------------------------------------------------------
- # ● 开始处理
- #--------------------------------------------------------------------------
- def start
- super
- createNewSprite()
- x = 0
- ghosting = [false, 0, 0]
- @credit_line = @credit.split(/\n/)
- for line in @credit_line
- convert_special_characters(line)
- setNewSpriteNilBitmap()
- @spriteLocal.bitmap.font.color = @new_color
- loop do
- c = line.slice!(/./m)
- case c
- when nil
- break
- when "\x01" # \C[n](文字变色)
- line.sub!(/\[([0-9a-fA-F]{1,2}),([0-9a-fA-F]{1,2}),([0-9a-fA-F]{1,2})\]/, "")
- @new_color = Color.new($1.hex, $2.hex, $3.hex)
- @spriteLocal.bitmap.font.color = @new_color
- next
- when "\x02" # \P[n](显示图片)
- line.sub!(/\[(\w+)\]/, "")
- endNewSprite()
- createNewSprite()
- @spriteLocal.bitmap = Bitmap.new("Graphics/Pictures/#{$1}")
- endNewSprite()
- createNewSprite()
- setNewSpriteNilBitmap()
- @spriteLocal.bitmap.font.color = @new_color
- x = 0
- next
- when "\x03"
- line.sub!(/\[([0-9]+),([0-9]+)\]/, "")
- ghosting = [true, $1.to_i, $2.to_i]
- when "\x04"
- line.sub!("\x04", "")
- ghosting = [false, 0, 0]
- when "\x05"
- line.sub!("\x05", "")
- @new_color = Color.new(255, 255, 255)
- @spriteLocal.bitmap.font.color = @new_color
- else # 一般文字
- if ghosting[0]
- cl = @spriteLocal.bitmap.font.color.dup
- @spriteLocal.bitmap.font.color = Color.new(0, 0, 0)
- @spriteLocal.bitmap.draw_text(x + ghosting[1], 0 + ghosting[2], 40, 32, c)
- @spriteLocal.bitmap.font.color = cl
- end
- @spriteLocal.bitmap.draw_text(x, 0, 40, 32, c)
- c_width = @spriteLocal.bitmap.text_size(c).width
- x += c_width
- end
- end
- endNewSprite()
- createNewSprite()
- setNewSpriteNilBitmap()
- x = 0
- end
- @frame_index = 0
- updateViewport()
- updateBackBitmap()
- updateBgm()
- end
- #--------------------------------------------------------------------------
- # ● 求余补充
- #--------------------------------------------------------------------------
- def remain(a, b)
- if b == 0
- return 1
- else
- return a % b
- end
- end
-
- #--------------------------------------------------------------------------
- # ● 加载数据库
- #--------------------------------------------------------------------------
- def load_database()
- @data_actors = load_data("Data/Actors.rvdata")
- @data_classes = load_data("Data/Classes.rvdata")
- @data_skills = load_data("Data/Skills.rvdata")
- @data_items = load_data("Data/Items.rvdata")
- @data_weapons = load_data("Data/Weapons.rvdata")
- @data_armors = load_data("Data/Armors.rvdata")
- @data_enemies = load_data("Data/Enemies.rvdata")
- @data_troops = load_data("Data/Troops.rvdata")
- @data_states = load_data("Data/States.rvdata")
- @data_maps = load_data("Data/MapInfos.rvdata")
- @data_animations = load_data("Data/Animations.rvdata")
- @data_common_events = load_data("Data/CommonEvents.rvdata")
- @data_systems = load_data("Data/System.rvdata")
- @data_areas = load_data("Data/Areas.rvdata")
- @data_switches = $game_switches
- @data_variables = $game_variables
- @data_self_switches = $game_self_switches
- @data_actorss = $game_actors
- @data_partys = $game_party
- @data_players = $game_player
- end
- #--------------------------------------------------------------------------
- # ● 符号解析
- #--------------------------------------------------------------------------
- def convert_special_characters(credit)
- return if credit == ""
- credit.gsub!(/<C,([0-9a-fA-F]+),([0-9a-fA-F]+),([0-9a-fA-F]+)>/i){ "\x01[#{$1},#{$2},#{$3}]" }
- credit.gsub!(/<G,([0-9]+),([0-9]+)>/i) { "\x03[#{$1},#{$2}]" }
- credit.gsub!(/<P,(\w+)>/i) { "\x02[#{$1}]" }
- credit.gsub!(/<\/G>/i) { "\x04" }
- credit.gsub!(/<\/C>/i) { "\x05" }
- if (credit.gsub(/<D,(\w+),([0-9]+),(\w+)>/i){}) != credit
- getDatabaseMessage($1.to_s, $2.to_s, $3.to_s)
- credit.gsub!(/<D,(\w+),([0-9]+),(\w+)>/i) { "#{@msg}" }
- end
- end
- #--------------------------------------------------------------------------
- # ● 释放
- #--------------------------------------------------------------------------
- def terminate
- super
- @backSprite.dispose
- @spriteArray.each do |i|
- i.bitmap.dispose
- i.dispose
- end
- @viewport.dispose
- @spriteLocal.bitmap.dispose
- @spriteLocal.dispose
- Audio.bgm_stop()
- end
- #--------------------------------------------------------------------------
- # ● 矩形碰撞检测
- #--------------------------------------------------------------------------
- def lastRect?()
- rect_b = Rect.new(@viewport.ox + Credit_Config::START_LOCATION[@creditIndex][0],
- [email protected] + Credit_Config::START_LOCATION[@creditIndex][1],
- @viewport.rect.width, getSpriteRectHeight())
- return !(@rect_a.collision?(rect_b))
- end
- #--------------------------------------------------------------------------
- # ● 时间超时检测
- #--------------------------------------------------------------------------
- def lastTime?()
- return (@frame_index >= @endTime)
- end
- #--------------------------------------------------------------------------
- # ● 结束检测
- #--------------------------------------------------------------------------
- def last?
- case @endType
- when 0
- return lastRect?()
- when 1
- return lastTime?()
- when 2
- return (lastRect?() or lastTime?())
- else
- p "请将 endType 设定在 0~2 之间"
- return true
- end
- end
- #--------------------------------------------------------------------------
- # ● 结束处理
- #--------------------------------------------------------------------------
- def last
- $scene = @returnClass
- end
- #--------------------------------------------------------------------------
- # ● 视口更新
- #--------------------------------------------------------------------------
- def updateViewport()
- if remain(@frame_index, @viewportMoveOxS) == 0
- @viewport.ox += @viewportMoveOx
- end
- if remain(@frame_index, @viewportMoveOyS) == 0
- @viewport.oy += @viewportMoveOy
- end
- if Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index] != nil
- @viewportMoveOx = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][0][0]
- @viewportMoveOxS = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][0][1]
- @viewportMoveOy = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][1][0]
- @viewportMoveOyS = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][1][1]
- @viewport.ox = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][2] if Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][2] != nil
- @viewport.oy = Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][3] if Credit_Config::CREDIT_SPEED[@creditIndex][@frame_index][3] != nil
- end
- end
- #--------------------------------------------------------------------------
- # ● 背景更新
- #--------------------------------------------------------------------------
- def updateBackBitmap()
- if remain(@frame_index, @backSpriteMoveXS) == 0
- @backSprite.x += @backSpriteMoveX
- end
- if remain(@frame_index, @backSpriteMoveYS) == 0
- @backSprite.y += @backSpriteMoveY
- end
- if Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index] != nil
- if Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][0] != nil
- @backSprite.bitmap.dispose if @backSprite.bitmap != nil
- @backSprite.bitmap = Bitmap.new("Graphics/Pictures/#{Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][0]}")
- @backSprite.z = -500
- end
- @backSpriteMoveX = Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][1][0]
- @backSpriteMoveXS = Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][1][1]
- @backSpriteMoveY = Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][2][0]
- @backSpriteMoveYS = Credit_Config::BACK_EXCHANGE_BITMAP[@creditIndex][@frame_index][2][1]
- end
- end
- #--------------------------------------------------------------------------
- # ● BGM 更新
- #--------------------------------------------------------------------------
- def updateBgm()
- if Credit_Config::BGM_ECHANG[@creditIndex][@frame_index] != nil
- if Credit_Config::BGM_ECHANG[@creditIndex][@frame_index][3] != 0
- Audio.bgm_fade(Credit_Config::BGM_ECHANG[@creditIndex][@frame_index][3])
- end
- Audio.bgm_stop()
- Audio.bgm_play("Audio/BGM/#{Credit_Config::BGM_ECHANG[@creditIndex][@frame_index][0]}",
- Credit_Config::BGM_ECHANG[@creditIndex][@frame_index][1],
- Credit_Config::BGM_ECHANG[@creditIndex][@frame_index][2])
- end
- end
- #--------------------------------------------------------------------------
- # ● 场景更新
- #--------------------------------------------------------------------------
- def update
- super
- @frame_index += 1
- updateViewport()
- updateBackBitmap()
- updateBgm()
- return if cancel?
- last if last?
- end
- #--------------------------------------------------------------------------
- # ● 自动退出按键检测
- #--------------------------------------------------------------------------
- def cancel?
- if Input.trigger?(Input::B)
- $scene = @returnClass
- return true
- end
- return false
- end
- #--------------------------------------------------------------------------
- # ● 生成返回对象
- #--------------------------------------------------------------------------
- def createReturnClass()
- begin
- returnClassLocal = "@returnClass = #{Credit_Config::BACK_SCENE_CLASS_NAME[@creditIndex][0]}.new("
- size = Credit_Config::BACK_SCENE_CLASS_NAME[@creditIndex][1].size() - 1
- for i in 0..size - 1
- returnClassLocal += "#{Credit_Config::BACK_SCENE_CLASS_NAME[@creditIndex][1][i]},"
- end
- returnClassLocal += "#{Credit_Config::BACK_SCENE_CLASS_NAME[@creditIndex][1][size]})"
- eval(returnClassLocal)
- rescue
- @returnClass = Scene_Title.new
- end
- return @returnClass
- end
- #--------------------------------------------------------------------------
- # ● 创建新缓冲精灵
- #--------------------------------------------------------------------------
- def createNewSprite()
- @spriteLocal.z = 1
- @spriteLocal.bitmap = nil
- @spriteLocal.x = Credit_Config::START_LOCATION[@creditIndex][0]
- @spriteLocal.y = getSpriteHeight()
- end
- #--------------------------------------------------------------------------
- # ● 结束缓冲精灵编辑
- #--------------------------------------------------------------------------
- def endNewSprite()
- spriteLocal = Sprite.new(@viewport)
- spriteLocal.x = @spriteLocal.x
- spriteLocal.bitmap = @spriteLocal.bitmap
- spriteLocal.y = @spriteLocal.y
- spriteLocal.z = @spriteLocal.z
- @spriteArray.push(spriteLocal)
- end
- #--------------------------------------------------------------------------
- # ● 设定缓冲精灵图片属性
- #--------------------------------------------------------------------------
- def setNewSpriteNilBitmap()
- @spriteLocal.bitmap = Bitmap.new(Credit_Config::SET_VIEWPORT[@creditIndex][2], 32)
- @spriteLocal.bitmap.font.color = @new_color.clone
- end
- #--------------------------------------------------------------------------
- # ● 获取字幕高度
- #--------------------------------------------------------------------------
- def getSpriteHeight()
- y = Credit_Config::START_LOCATION[@creditIndex][1]
- y += getSpriteRectHeight()
- return y
- end
- #--------------------------------------------------------------------------
- # ● 获取最终文字高度
- #--------------------------------------------------------------------------
- def getSpriteRectHeight()
- y = 0
- for i in @spriteArray
- y += i.height
- end
- return y
- end
- #--------------------------------------------------------------------------
- # ● 获取数据库信息
- #--------------------------------------------------------------------------
- def getDatabaseMessage(database, index, attribute)
- sci = "@msg = @data_#{database}s[#{index}].#{attribute}"
- begin
- eval(sci)
- rescue
- @msg = ""
- end
- end
- end
复制代码 |
评分
-
查看全部评分
|