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

Project1

 找回密码
 注册会员
搜索
查看: 3574|回复: 12

[已经过期] 关于RGSS PLAY停止运行的问题

[复制链接]

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
发表于 2018-11-3 17:14:27 | 显示全部楼层 |阅读模式

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

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

x
如题
插入一个影子的脚本以后,剧情里打开事件开关就会出现RGSS PLAY停止工作的问题
但是如果把那个脚本删掉就没有这个问题了......
不过这个脚本自带范例,说明也没啥问题...

我查了一下说是win7系统特有的故障
然后说的各种释放看得我一头雾水......

如果调整电脑兼容性
就算可以运行了,那也是我一台电脑可以运行......

到时候给别人玩万一出现同样问题让别人去改那太麻烦了......

于是求解

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-3 17:26:15 | 显示全部楼层
好吧......
现在问题升级成......
只要某个事件块的角色图片有变动

比如桌子上的东西【事件块图片】被拿走【消失】
门口【空白事件块】出现角色

只要有这种情况,就会发生RGSS PLAY停止................
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
2
星屑
13088
在线时间
2273 小时
注册时间
2011-6-4
帖子
613
发表于 2018-11-3 19:09:18 | 显示全部楼层
既然是脚本问题就把脚本发出来看看呗
BUG反馈请加QQ 529283039
水友群 917854767

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
19269
在线时间
3073 小时
注册时间
2013-1-11
帖子
1288
发表于 2018-11-3 19:23:08 | 显示全部楼层
本帖最后由 张咚咚 于 2018-11-3 19:29 编辑

看看是不是这种情况?
Viewport没给参数什么的,应该很大几率应该是viewport的问题。。
  1. a = Viewport.new
  2. b = Sprite.new a
复制代码
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-3 20:58:40 | 显示全部楼层
张咚咚 发表于 2018-11-3 19:23
看看是不是这种情况?
Viewport没给参数什么的,应该很大几率应该是viewport的问题。。
...

这是......啥...?要加到脚本下面吗?
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-3 21:00:57 | 显示全部楼层
目前情况就是
已经确定就是那个影子脚本的问题......

试着把其他添加进去的脚本删除照样出现bug........

bug,也就是那个失败是在事件开关触发以后就会出来....
正常的地图地点移动更换,和人物对话反而没事
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-3 21:01:45 | 显示全部楼层
本帖最后由 guoxiaomi 于 2018-11-3 21:18 编辑
真·可乐 发表于 2018-11-3 19:09
既然是脚本问题就把脚本发出来看看呗


就是这个

RUBY 代码复制
  1. #==============================================================================
  2. # ☆ 人物影子 ☆           (芯☆淡茹水)
  3. #==============================================================================
  4. # ★ 使用方法:复制该脚本,插入到 main 前。
  5. #==============================================================================
  6. # ★ 冲突:尚未发现。
  7. #==============================================================================
  8. # ★ ↓设置↓
  9. #----------------------------------------------------------------------------
  10. module X☆R
  11.   #--------------------------------------------------------------------------
  12.   #不需要显示人物影子的地图ID。(比如室内,山洞)
  13.   Not_Shadow_Id = [0]
  14.  
  15.   #--------------------------------------------------------------------------
  16.   #不需要显示人物影子的行走图名。(比如 行走图已有影子, 门, 鬼魂?,,,)
  17.   Not_Shadow_Name = ["","170-Door01"]
  18.  
  19.   #--------------------------------------------------------------------------
  20.   #控制影子显示的开关ID,打开-显示;关闭-不显示。(比如突然阴天下雨)
  21.   Control_Sv_Id = 489
  22.  
  23.   #--------------------------------------------------------------------------
  24.   #影子的透明度。
  25.   Shadow_Opacity = 80
  26.  
  27.   #--------------------------------------------------------------------------
  28.   #影子X轴方向的放大率调整。
  29.   Shadow_Zoom_X = 0.7
  30.  
  31.   #--------------------------------------------------------------------------
  32.   #光照方向的变量ID,变量值为光照角度, 范围: 0..360。(12点0度,逆时针)
  33.   Shadow_Angle_Var = 10
  34.  
  35.   #--------------------------------------------------------------------------
  36.   #光照高度的变量ID,变量值为光照高度, 范围: 0..90。
  37.   Beam_Height_Var = 11
  38.  
  39.   #--------------------------------------------------------------------------
  40.   #飞行类行走图名。该类的影子需要距离本体较远。
  41.   Flay_Name = ["159-Small01","163-Small05","164-Small06","165-Small07"]
  42.  
  43.   #--------------------------------------------------------------------------
  44.   #飞行类影子为正常影子缩小的百分比。(飞行类影子偏小)
  45.   Flay_Narrow_Rate = 80
  46.   #--------------------------------------------------------------------------
  47.   #飞行类影子距离本体左右偏移最大像素值
  48.   Flay_Add_X = 32
  49.  
  50.   #--------------------------------------------------------------------------
  51.   #飞行类影子距离本体往下的像素值。
  52.   Flay_Add_Y = 64
  53. end
  54. #==============================================================================
  55. #==============================================================================
  56. class Sprite_Character < RPG::Sprite
  57.   #--------------------------------------------------------------------------
  58.   alias x☆r_initialize_sd initialize
  59.   def initialize(viewport, character = nil)
  60.     initialize_shadow(viewport)
  61.     x☆r_initialize_sd(viewport, character)
  62.   end
  63.   #--------------------------------------------------------------------------
  64.   alias x☆r_update_sd update
  65.   def update; update_shadow; x☆r_update_sd; end
  66.   #--------------------------------------------------------------------------
  67.   def dispose
  68.     @shadow.bitmap.dispose if @shadow.bitmap
  69.     @shadow.dispose
  70.     super
  71.   end
  72.   #--------------------------------------------------------------------------
  73.   def initialize_shadow(viewport)
  74.     [url=home.php?mod=space&uid=31758]@Shadow[/url] = Sprite.new(viewport)
  75.     @shadow.color = Color.new(0,0,0)
  76.     set_data
  77.   end
  78.   #--------------------------------------------------------------------------
  79.   def update_shadow
  80.     if @data_show != $game_switches[X☆R::Control_Sv_Id]
  81.       @data_show = $game_switches[X☆R::Control_Sv_Id]
  82.       @shadow.visible = @data_show ? have_shadow? : false
  83.     end
  84.     return unless @data_show
  85.     set_data       if need_refresh
  86.     make_shadow    if @character_name != @character.character_name
  87.     @shadow.update if @shadow.bitmap
  88.     set_shadow     if @shadow.bitmap
  89.   end
  90.   #--------------------------------------------------------------------------
  91.   def need_refresh
  92.     return true if @data_var_a != $game_variables[X☆R::Shadow_Angle_Var]
  93.     return true if @data_var_b != $game_variables[X☆R::Beam_Height_Var]
  94.     return false
  95.   end
  96.   #--------------------------------------------------------------------------
  97.   def set_data
  98.     @data_var_a = $game_variables[X☆R::Shadow_Angle_Var]
  99.     @data_var_b = $game_variables[X☆R::Beam_Height_Var]
  100.     @shadow.angle = (@data_var_a.abs + 180) % 360
  101.     zoom_x = X☆R::Shadow_Zoom_X
  102.     zoom_x = zoom_x * X☆R::Flay_Narrow_Rate / 100  if @flay
  103.     @shadow.zoom_x = zoom_x
  104.     @shadow.zoom_y = angle_count
  105.     @shadow_direction = case @shadow.angle
  106.     when 0..44      :[0,1,2,3]
  107.     when 45..134    :[1,3,0,2]
  108.     when 135..224   :[3,2,1,0]
  109.     when 225..314   :[2,0,3,1]
  110.     when 315..359   :[0,1,2,3]
  111.     end
  112.   end
  113.   #--------------------------------------------------------------------------
  114.   def angle_count
  115.     ag = @data_var_b % 91; max = 4.0;
  116.     ag.times{max -= max / 40}
  117.     n = [max, 0.4].max; n = n * X☆R::Flay_Narrow_Rate / 100 if @flay
  118.     return n
  119.   end
  120.   #--------------------------------------------------------------------------
  121.   def add_place_count
  122.     @add_y = @flay ? X☆R::Flay_Add_Y : -2
  123.     @add_y -= 10 if (135..224).include?(@shadow.angle)
  124.     @add_x = @shadow.angle >= 180 ? -2 : 2
  125.     return unless @flay
  126.     ag = @shadow.angle >= 180 ? (@shadow.angle - 180) : @shadow.angle
  127.     n = ag % 90; n = ag > 90 ? 90-n : n
  128.     n = n * X☆R::Flay_Add_X / 90.0
  129.     @add_x = @shadow.angle > 180 ? n : -n
  130.   end
  131.   #--------------------------------------------------------------------------
  132.   def have_shadow?
  133.     return false if @character.tile_id  >= 384
  134.     return false if @character.character_name == ""
  135.     return false if X☆R::Not_Shadow_Id.include?($game_map.map_id)
  136.     return false if X☆R::Not_Shadow_Name.include?(@character.character_name)
  137.     return true
  138.   end
  139.   #--------------------------------------------------------------------------
  140.   def make_shadow
  141.     @shadow.bitmap.dispose if @shadow.bitmap
  142.     s_bitmap = RPG::Cache.character(@character.character_name,0)
  143.     @shadow.bitmap = have_shadow? ? s_bitmap : nil
  144.     return unless @shadow.bitmap
  145.     @aw = s_bitmap.width / 4; @ah = s_bitmap.height / 4
  146.     @shadow.ox = @aw / 2;     @shadow.oy = @ah
  147.     @flay = (X☆R::Flay_Name.include?(@character.character_name))
  148.     set_data
  149.     add_place_count
  150.   end
  151.   #--------------------------------------------------------------------------
  152.   def set_shadow
  153.     @shadow.visible = (! @character.transparent)
  154.     return unless @shadow.visible
  155.     ax = @character.pattern * @aw
  156.     ay = @shadow_direction[(@character.direction - 2) / 2] * @ah
  157.     @shadow.src_rect.set(ax, ay, @aw, @ah)
  158.     @shadow.x = @character.screen_x + @add_x
  159.     @shadow.y = @character.screen_y + @add_y
  160.     @shadow.z = @character.screen_z + (@flay ? 9999 : 0)
  161.     @shadow.opacity = @character.opacity * X☆R::Shadow_Opacity / 255
  162.     @shadow.blend_type = @character.blend_type
  163.   end
  164. end
  165. #==============================================================================
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
39352
在线时间
7470 小时
注册时间
2009-7-6
帖子
13482

开拓者贵宾

发表于 2018-11-4 15:05:10 | 显示全部楼层
看起来没什么问题,我感觉是和其他脚本相互影响产生的问题,停止运行目前为止只有精灵未释放才会导致。
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-4 18:47:18 | 显示全部楼层
fux2 发表于 2018-11-4 15:05
看起来没什么问题,我感觉是和其他脚本相互影响产生的问题,停止运行目前为止只有精灵未释放才会导致。 ...

但是之前也用过,当时都没问题......
把可能出冲突的删了都不行
把那个影子的删了就正常了..........
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
682
在线时间
58 小时
注册时间
2014-4-30
帖子
21
 楼主| 发表于 2018-11-14 12:43:27 | 显示全部楼层
没人吱个声吗?!?!?!?

点评

我觉得你应该把导致的出错的脚本整合到一个范例,是怎么操作造成出错的,才有人能帮你解决,上面那个脚本测试是没问题的。  发表于 2018-11-14 13:36
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-3-29 06:07

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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