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

Project1

 找回密码
 注册会员
搜索
楼主: 578783944
打印 上一主题 下一主题

[已经解决] 求推荐XP用的天气脚本系统

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
97 小时
注册时间
2015-3-27
帖子
225
11
 楼主| 发表于 2015-5-15 22:01:10 | 只看该作者
芯☆淡茹水 发表于 2015-5-15 20:57
我的坑:

Project1.7z (341.3 KB, 下载次数: 41)

你看看我的脚本吧
我的博客:http://wang1212.github.io/
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33486
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

12
发表于 2015-5-16 09:06:03 | 只看该作者
本帖最后由 芯☆淡茹水 于 2015-5-16 09:07 编辑

话说这个工程貌似有些眼熟的样子?
大话西游 已经被翻烂了的说。
首先默认天气能用否?
如果能用,查看一下自定义天气的各项设置。
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
97 小时
注册时间
2015-3-27
帖子
225
13
 楼主| 发表于 2015-5-16 10:07:39 | 只看该作者
芯☆淡茹水 发表于 2015-5-16 09:06
话说这个工程貌似有些眼熟的样子?
大话西游 已经被翻烂了的说。
首先默认天气能用否?

首先这不是大话西游 是 梦幻西游
工程里面的有些脚本你或许眼熟,但是素材全部是我自己重新提取制作的,包括数据库全部重做,以前的那个类似的游戏做的太粗糙

默认天气不能用,是失效的

我新建一个工程仅插入这个天气脚本能用,在把我脚本里的双愿景插入,天气脚本就失效了
我觉得应该是双愿景调用的图块和天气系统的图块有冲突,但是不知道该怎么解决
我的博客:http://wang1212.github.io/
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
226 小时
注册时间
2015-5-8
帖子
329
14
发表于 2015-5-16 10:35:58 | 只看该作者
出現該問題可能是因為遠景腳本生成的精靈和天氣腳本生成的精靈衝突了。
要解決的方法就可能要生成兩種分離的精靈模式,也是說需要重新整合成一個完整的腳本

点评

离开地图时如何消除天气  发表于 2015-5-16 19:33
还有这个脚本的素材在哪,如果我游戏打包分离后 脚本还能正常用吗  发表于 2015-5-16 19:30
呃....这个对于我来说难度太大  发表于 2015-5-16 10:44

评分

参与人数 1星屑 +88 收起 理由
芯☆淡茹水 + 88 貌似是显示端口问题

查看全部评分

我是妖精蕾貝卡,沉默少言,孤獨自卑。完成了一個小遊戲,歡迎試玩。同時也歡迎試玩師傅的遊戲,謝謝。
現正在努力學習事件中,有不明白的地方請各位指教。

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
33486
在线时间
5108 小时
注册时间
2012-11-19
帖子
4878

开拓者

15
发表于 2015-5-16 16:07:38 | 只看该作者
梦幻西游,还不是西游,,,。说的 梦单 貌似就是梦幻西游吧。
原脚本的双远景给天气代入一个Z值较低的显示端口,我改了一下,增加一个端口代入天气。
改的地方搜索  X☆R  ,下面是双远景,天气脚本就不必动了。
  1. #==============================================================================
  2. # 本脚本来自www.66rpg.com,使用前请参考制作录像
  3. #==============================================================================
  4. # ■ Spriteset_Map
  5. #------------------------------------------------------------------------------
  6. #  处理地图画面活动块和元件的类。本类在
  7. # Scene_Map 类的内部使用。
  8. #==============================================================================

  9. class Spriteset_Map
  10.   attr_accessor :panorama
  11.   attr_accessor :panorama2
  12.   attr_accessor :plane
  13.   attr_accessor :plane2
  14.   Map_width = 320
  15.   Map_height = 240
  16.   #--------------------------------------------------------------------------
  17.   # ● 初始化对像
  18.   #--------------------------------------------------------------------------
  19.   def initialize
  20.     # 生成显示端口
  21.     @viewport1 = Viewport.new(0, 0, 640, 480)
  22.     @viewport2 = Viewport.new(0, 0, 640, 480)
  23.     @viewport3 = Viewport.new(0, 0, 640, 480)
  24.     @viewport4 = Viewport.new(0, 0, 640, 480) #<--- X☆R
  25.     #@viewport2.z = 200
  26.     @viewport3.z = 5000
  27.     @viewport4.z = 6000
  28.     # 生成元件地图
  29.     @tilemap = Tilemap.new(@viewport1)
  30.     @tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)
  31.     for i in 0..6
  32.       autotile_name = $game_map.autotile_names[i]
  33.       @tilemap.autotiles[i] = RPG::Cache.autotile(autotile_name)
  34.     end
  35.     @tilemap.map_data = $game_map.data
  36.     @tilemap.priorities = $game_map.priorities
  37.     # 生成远景平面
  38.     @path = "map/"#远景图所在路径
  39.     @panorama = []
  40.     @panorama2 = []
  41.     @plane = Plane.new(@viewport1)
  42.     @plane.z = -1000
  43.     @plane2 = Plane.new(@viewport1)
  44.     @plane2.z = 3000
  45.     @panorama_status = []
  46.     @type  = ($game_map.width + $game_map.height > 275 ) ? true : false#高宽限制
  47.     for i in 0..8
  48.       @panorama[i] = Sprite.new(@viewport1)
  49.       @panorama[i].z = -1000
  50.       @panorama2[i] = Sprite.new(@viewport1)
  51.       @panorama2[i].z = 3000
  52.       @panorama_status[i] = i
  53.     end
  54.     #图像位置初始化
  55.     update_xy
  56.     # 生成雾平面
  57.     @fog = Plane.new(@viewport1)
  58.     @fog.z = 3000
  59.     # 生成角色活动块
  60.     @character_sprites = []
  61.     for i in $game_map.events.keys.sort
  62.       sprite = Sprite_Character.new(@viewport1, $game_map.events[i])
  63.       @character_sprites.push(sprite)
  64.     end
  65.     @character_sprites.push(Sprite_Character.new(@viewport1, $game_player))
  66.     # 生成天气
  67.     @weather = RPG::Weather.new(@viewport4)  #<--- X☆R
  68.     # 生成图片
  69.     @picture_sprites = []
  70.     for i in 1..50
  71.       @picture_sprites.push(Sprite_Picture.new(@viewport2,
  72.         $game_screen.pictures[i]))
  73.     end
  74.     # 生成计时器块
  75.     @timer_sprite = Sprite_Timer.new
  76.     # 刷新画面
  77.     update
  78.   end
  79.   #--------------------------------------------------------------------------
  80.   # ● 释放
  81.   #--------------------------------------------------------------------------
  82.   def dispose
  83.     # 释放元件地图
  84.     @tilemap.tileset.dispose
  85.     for i in 0..6
  86.       @tilemap.autotiles[i].dispose
  87.     end
  88.     @tilemap.dispose
  89.     # 释放远景平面
  90.     for i in 0..8
  91.       if @panorama[i].bitmap != nil
  92.         @panorama[i].bitmap.dispose
  93.       end
  94.       if @panorama2[i].bitmap != nil
  95.         @panorama2[i].bitmap.dispose
  96.       end
  97.       @panorama[i].dispose
  98.       @panorama2[i].dispose
  99.     end
  100.     if @plane.bitmap != nil
  101.       @plane.bitmap.dispose
  102.     end
  103.     if @plane2.bitmap != nil
  104.       @plane2.bitmap.dispose
  105.     end
  106.     @plane.dispose
  107.     @plane2.dispose
  108.     # 释放雾平面
  109.     @fog.dispose
  110.     # 释放角色活动块
  111.     for sprite in @character_sprites
  112.       sprite.dispose
  113.     end
  114.     # 释放天候
  115.     #@weather.dispose
  116.     # 释放图片
  117.     for sprite in @picture_sprites
  118.       sprite.dispose
  119.     end
  120.     # 释放计时器块
  121.     @timer_sprite.dispose
  122.     # 释放显示端口
  123.     @viewport1.dispose
  124.     @viewport2.dispose
  125.     @viewport3.dispose
  126.     @viewport4.dispose   #<--- X☆R
  127.   end
  128.   #--------------------------------------------------------------------------
  129.   # ● 默认刷新画面
  130.   #--------------------------------------------------------------------------
  131.   def update_default
  132.     # 远景与现在的情况有差异发情况下
  133.     if @panorama_name != $game_map.panorama_name or
  134.        @panorama_hue != $game_map.panorama_hue
  135.       @panorama_name = $game_map.panorama_name
  136.       @panorama_hue = $game_map.panorama_hue
  137.       if @plane.bitmap != nil
  138.         @plane.bitmap.dispose
  139.         @plane2.bitmap.dispose
  140.         @plane.bitmap = nil
  141.         @plane2.bitmap = nil
  142.       end
  143.       if @panorama_name != ""
  144.         @plane.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
  145.         @plane2.bitmap = RPG::Cache.panorama(@panorama_name+"_2", @panorama_hue)
  146.       end
  147.       Graphics.frame_reset
  148.     end
  149.     # 雾与现在的情况有差异的情况下
  150.     if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
  151.       @fog_name = $game_map.fog_name
  152.       @fog_hue = $game_map.fog_hue
  153.       if @fog.bitmap != nil
  154.         @fog.bitmap.dispose
  155.         @fog.bitmap = nil
  156.       end
  157.       if @fog_name != ""
  158.         @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
  159.       end
  160.       Graphics.frame_reset
  161.     end
  162.     # 刷新元件地图
  163.     @tilemap.ox = $game_map.display_x / 4
  164.     @tilemap.oy = $game_map.display_y / 4
  165.     @tilemap.update
  166.     # 刷新远景平面

  167.     @plane.ox = $game_map.display_x / 4
  168.     @plane.oy = $game_map.display_y / 4
  169.     @plane2.ox = @plane.ox
  170.     @plane2.oy = @plane.oy
  171.     # 刷新雾平面
  172.     @fog.zoom_x = $game_map.fog_zoom / 100.0
  173.     @fog.zoom_y = $game_map.fog_zoom / 100.0
  174.     @fog.opacity = $game_map.fog_opacity
  175.     @fog.blend_type = $game_map.fog_blend_type
  176.     @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
  177.     @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
  178.     @fog.tone = $game_map.fog_tone
  179.     # 刷新角色活动块
  180.     for sprite in @character_sprites
  181.         sprite.update
  182.     end
  183.     # 刷新天候图形
  184.     #@weather.type = $game_screen.weather_type
  185.     #@weather.max = $game_screen.weather_max
  186.     #@weather.ox = $game_map.display_x / 4
  187.     #@weather.oy = $game_map.display_y / 4
  188.     #@weather.update
  189.     # 刷新图片
  190.     for sprite in @picture_sprites
  191.       sprite.update
  192.     end
  193.     # 刷新计时器块
  194.     @timer_sprite.update
  195.     # 设置画面的色调与震动位置
  196.     @viewport1.tone = $game_screen.tone
  197.     @viewport1.ox = $game_screen.shake
  198.     # 设置画面的闪烁色
  199.     @viewport3.color = $game_screen.flash_color
  200.     # 刷新显示端口
  201.     @viewport1.update
  202.     @viewport3.update
  203.   end
  204.   #--------------------------------------------------------------------------
  205.   # ● 刷新画面
  206.   #--------------------------------------------------------------------------
  207.   def update
  208.     if @type == false
  209.       update_default
  210.       return
  211.     end
  212.     # 远景与现在的情况有差异发情况下
  213.     if @panorama_name != $game_map.panorama_name or @panorama_hue != $game_map.panorama_hue
  214.       @panorama_name = $game_map.panorama_name
  215.       @panorama_hue = $game_map.panorama_hue
  216.       # 修正display_x和display_y,避免出现黑底
  217.       $game_map.display_x = $game_map.display_x-($game_map.display_x/4%Map_width)*4+Map_width/2*4
  218.       $game_map.display_y = $game_map.display_y-($game_map.display_y/4%Map_height)*4+Map_height/2*4
  219.       # 开始描绘远景图
  220.       update_panorama
  221.       # 记录旧坐标便于刷新ox和oy
  222.       @old_x = $game_map.display_x
  223.       @old_y = $game_map.display_y
  224.       # 修正如果地图切换时,主角在地图边缘边缘时出现黑底的问题
  225.       if ($game_map.display_x/4+@panorama[2].x) >= ($game_map.width*32)
  226.         $game_map.display_x-=640
  227.       end
  228.       if ($game_map.display_y/4+@panorama[6].y) >= ($game_map.height*32)
  229.         $game_map.display_y-=480
  230.       end
  231.       #防止进入地图时角色在最左边找不到人的BUG
  232.       if $game_player.x <= 10
  233.         $game_map.display_x = 0
  234.       end
  235.       #防止进入地图时角色在最上边找不到人的BUG
  236.       if $game_player.y <= 10
  237.         $game_map.display_y = 0
  238.       #防止进入地图时角色在最下面时最后一个图片高度不为120的情况
  239.       elsif ($game_map.height * 32)%240 != 0
  240.         if ($game_map.height * 32)%240 < Map_height / 2
  241.           $game_map.display_y -=Map_height
  242.         end
  243.       end
  244.     end
  245.     # 雾与现在的情况有差异的情况下
  246.     if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
  247.       @fog_name = $game_map.fog_name
  248.       @fog_hue = $game_map.fog_hue
  249.       if @fog.bitmap != nil
  250.         @fog.bitmap.dispose
  251.         @fog.bitmap = nil
  252.       end
  253.       if @fog_name != ""
  254.         @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
  255.       end
  256.       Graphics.frame_reset
  257.     end
  258.     # 刷新元件地图
  259.     @tilemap.ox = $game_map.display_x / 4
  260.     @tilemap.oy = $game_map.display_y / 4
  261.     @tilemap.update
  262.     # 刷新远景平面
  263.     #如果水平移动
  264.     if @old_x != $game_map.display_x
  265.       v = @old_x / 4
  266.       d = $game_map.display_x / 4
  267.       for i in 0..8
  268.         @panorama[i].ox -= v - d
  269.         @panorama2[i].ox -= v - d
  270.       end
  271.       @old_x = $game_map.display_x
  272.     end  
  273.     #如果竖直移动
  274.     if @old_y != $game_map.display_y
  275.      v = @old_y / 4
  276.      d = $game_map.display_y / 4
  277.       for i in 0..8
  278.         @panorama[i].oy -= v-d
  279.         @panorama2[i].oy -= v-d
  280.       end
  281.       @old_y = $game_map.display_y
  282.     end
  283.     #重新计算图像布局
  284.     x = $game_map.display_x / 4
  285.     a = x / Map_width + 1
  286.     y = $game_map.display_y / 4
  287.     b = y / Map_height + 1
  288.     if @old_plx != a
  289.       if @old_ply != b
  290.         update_ab(x,y,a,b)
  291.       else
  292.         update_a(x,y,a,b)
  293.       end
  294.     end   
  295.     if @old_ply != b
  296.       if @old_plx != a
  297.         update_ab(x,y,a,b)
  298.       else
  299.         update_b(x,y,a,b)
  300.       end   
  301.     end
  302.     # 刷新雾平面
  303.     @fog.zoom_x = $game_map.fog_zoom / 100.0
  304.     @fog.zoom_y = $game_map.fog_zoom / 100.0
  305.     @fog.opacity = $game_map.fog_opacity
  306.     @fog.blend_type = $game_map.fog_blend_type
  307.     @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
  308.     @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
  309.     @fog.tone = $game_map.fog_tone
  310.     # 刷新角色活动块
  311.     for sprite in @character_sprites
  312.       sprite.update
  313.     end
  314.     # 刷新天候图形
  315.     #@weather.type = $game_screen.weather_type
  316.     #@weather.max = $game_screen.weather_max
  317.     #@weather.ox = $game_map.display_x / 4
  318.     #@weather.oy = $game_map.display_y / 4
  319.     #@weather.update
  320.     # 刷新图片
  321.     for sprite in @picture_sprites
  322.       sprite.update
  323.     end
  324.     # 刷新计时器块
  325.     @timer_sprite.update
  326.     # 设置画面的色调与震动位置
  327.     @viewport1.tone = $game_screen.tone
  328.     @viewport1.ox = $game_screen.shake
  329.     # 设置画面的闪烁色
  330.     @viewport3.color = $game_screen.flash_color
  331.     # 刷新显示端口
  332.     @viewport1.update
  333.     @viewport3.update
  334.   end
  335.   #==============================================================================
  336.   # 精灵图像水平变更
  337.   #==============================================================================  
  338.   def update_a(x,y,a,b)
  339.     if a-1 >= 0
  340.       c = a-1
  341.     else
  342.       c = false
  343.     end  
  344.     wi = $game_map.width*32
  345.     if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width )
  346.       d = a+1
  347.     else
  348.       d = false
  349.     end
  350.     if b-1 >= 0
  351.       e = b-1
  352.     else
  353.       e = false
  354.     end  
  355.     he = $game_map.height*32
  356.     if b+1 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  357.       f = b+1
  358.     else
  359.       f = false
  360.     end
  361.     if a < @old_plx
  362.       for i in 0..8
  363.         case @panorama_status[i]
  364.         when 2
  365.           if @panorama[i].bitmap != nil
  366.             @panorama[i].bitmap.dispose
  367.             @panorama[i].bitmap = nil
  368.           end
  369.           if @panorama2[i].bitmap != nil
  370.             @panorama2[i].bitmap.dispose
  371.             @panorama2[i].bitmap = nil
  372.           end
  373.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  374.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  375.         when 5
  376.           if @panorama[i].bitmap != nil
  377.             @panorama[i].bitmap.dispose
  378.             @panorama[i].bitmap = nil
  379.           end
  380.           if @panorama2[i].bitmap != nil
  381.             @panorama2[i].bitmap.dispose
  382.             @panorama2[i].bitmap = nil
  383.           end
  384.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum)
  385.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  386.         when 8
  387.           if @panorama[i].bitmap != nil
  388.             @panorama[i].bitmap.dispose
  389.             @panorama[i].bitmap = nil
  390.           end
  391.           if @panorama2[i].bitmap != nil
  392.             @panorama2[i].bitmap.dispose
  393.             @panorama2[i].bitmap = nil
  394.           end
  395.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  396.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  397.         end
  398.       end
  399.         #将数组值迭代给@old_panorama_status,不可直接赋值
  400.         @old_panorama_status = @panorama_status.dup
  401.         @panorama_status[0] = @old_panorama_status[1]
  402.         @panorama_status[1] = @old_panorama_status[2]
  403.         @panorama_status[2] = @old_panorama_status[0]
  404.         @panorama_status[3] = @old_panorama_status[4]
  405.         @panorama_status[4] = @old_panorama_status[5]
  406.         @panorama_status[5] = @old_panorama_status[3]
  407.         @panorama_status[6] = @old_panorama_status[7]
  408.         @panorama_status[7] = @old_panorama_status[8]
  409.         @panorama_status[8] = @old_panorama_status[6]
  410.     else
  411.       for i in 0..8
  412.         case @panorama_status[i]
  413.         when 0
  414.           if @panorama[i].bitmap != nil
  415.             @panorama[i].bitmap.dispose
  416.             @panorama[i].bitmap = nil
  417.           end
  418.           if @panorama2[i].bitmap != nil
  419.             @panorama2[i].bitmap.dispose
  420.             @panorama2[i].bitmap = nil
  421.           end
  422.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  423.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  424.         when 3
  425.           if @panorama[i].bitmap != nil
  426.             @panorama[i].bitmap.dispose
  427.             @panorama[i].bitmap = nil
  428.           end
  429.           if @panorama2[i].bitmap != nil
  430.             @panorama2[i].bitmap.dispose
  431.             @panorama2[i].bitmap = nil
  432.           end
  433.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum)
  434.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  435.         when 6
  436.           if @panorama[i].bitmap != nil
  437.             @panorama[i].bitmap.dispose
  438.             @panorama[i].bitmap = nil
  439.           end
  440.           if @panorama2[i].bitmap != nil
  441.             @panorama2[i].bitmap.dispose
  442.             @panorama2[i].bitmap = nil
  443.           end
  444.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)     
  445.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  446.         end
  447.       end
  448.       @old_panorama_status = @panorama_status.dup
  449.       @panorama_status[0] = @old_panorama_status[2]
  450.       @panorama_status[1] = @old_panorama_status[0]
  451.       @panorama_status[2] = @old_panorama_status[1]
  452.       @panorama_status[3] = @old_panorama_status[5]
  453.       @panorama_status[4] = @old_panorama_status[3]
  454.       @panorama_status[5] = @old_panorama_status[4]
  455.       @panorama_status[6] = @old_panorama_status[8]
  456.       @panorama_status[7] = @old_panorama_status[6]
  457.       @panorama_status[8] = @old_panorama_status[7]
  458.     end
  459.     #更新图像位置
  460.     update_xy
  461.     #图像传送坐标复位
  462.     m = @panorama[0].ox
  463.     if @panorama[0].ox < 0
  464.       for i in 0..8
  465.         @panorama[i].ox = Map_width+m
  466.         @panorama2[i].ox = Map_width+m
  467.       end     
  468.     else
  469.       for i in 0..8
  470.         @panorama[i].ox = -(Map_width)+m
  471.         @panorama2[i].ox = -(Map_width)+m
  472.       end     
  473.     end
  474.     #更新横向旧标识
  475.     @old_plx = a
  476.   end
  477.   #==============================================================================
  478.   # 精灵图像竖直水平变更
  479.   #==============================================================================  
  480.   def update_ab(x,y,a,b)
  481.     if a < @old_plx and b < @old_ply
  482.       if a-1 >= 0
  483.         c = a-1
  484.       else
  485.         c = false
  486.       end  
  487.       wi = $game_map.width*32
  488.       if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width)
  489.         d = a+1
  490.       else
  491.         d = false
  492.       end
  493.       he = $game_map.height*32
  494.       if b+2 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  495.         e = b+2
  496.       else
  497.         e = false
  498.       end  
  499.       if b+1 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  500.         f = b+1
  501.       else
  502.         f = false
  503.       end     
  504.       for i in 0..8
  505.         case @panorama_status[i]
  506.         when 2
  507.           if @panorama[i].bitmap != nil
  508.             @panorama[i].bitmap.dispose
  509.             @panorama[i].bitmap = nil
  510.           end
  511.           if @panorama2[i].bitmap != nil
  512.             @panorama2[i].bitmap.dispose
  513.             @panorama2[i].bitmap = nil
  514.           end
  515.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  516.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  517.         when 5
  518.           if @panorama[i].bitmap != nil
  519.             @panorama[i].bitmap.dispose
  520.             @panorama[i].bitmap = nil
  521.           end
  522.           if @panorama2[i].bitmap != nil
  523.             @panorama2[i].bitmap.dispose
  524.             @panorama2[i].bitmap = nil
  525.           end
  526.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum)
  527.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  528.         when 8
  529.           if @panorama[i].bitmap != nil
  530.             @panorama[i].bitmap.dispose
  531.             @panorama[i].bitmap = nil
  532.           end
  533.           if @panorama2[i].bitmap != nil
  534.             @panorama2[i].bitmap.dispose
  535.             @panorama2[i].bitmap = nil
  536.           end
  537.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  538.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  539.         end
  540.       end
  541.       @old_panorama_status = @panorama_status.dup
  542.       @panorama_status[0] = @old_panorama_status[1]
  543.       @panorama_status[1] = @old_panorama_status[2]
  544.       @panorama_status[2] = @old_panorama_status[0]
  545.       @panorama_status[3] = @old_panorama_status[4]
  546.       @panorama_status[4] = @old_panorama_status[5]
  547.       @panorama_status[5] = @old_panorama_status[3]
  548.       @panorama_status[6] = @old_panorama_status[7]
  549.       @panorama_status[7] = @old_panorama_status[8]
  550.       @panorama_status[8] = @old_panorama_status[6]
  551.     elsif a < @old_plx and b > @old_ply
  552.       if a-1 >= 0
  553.         c = a-1
  554.       else
  555.         c = false
  556.       end  
  557.       wi = $game_map.width*32
  558.       if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width)
  559.         d = a+1
  560.       else
  561.         d = false
  562.       end
  563.       if b-2 >= 0
  564.         e = b-2
  565.       else
  566.         e = false
  567.       end  
  568.       if b-1 >= 0
  569.         f = b-1
  570.       else
  571.         f = false
  572.       end     
  573.       for i in 0..8
  574.         case @panorama_status[i]
  575.         when 2
  576.           if @panorama[i].bitmap != nil
  577.             @panorama[i].bitmap.dispose
  578.             @panorama[i].bitmap = nil
  579.           end
  580.           if @panorama2[i].bitmap != nil
  581.             @panorama2[i].bitmap.dispose
  582.             @panorama2[i].bitmap = nil
  583.           end
  584.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  585.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  586.         when 5
  587.           if @panorama[i].bitmap != nil
  588.             @panorama[i].bitmap.dispose
  589.             @panorama[i].bitmap = nil
  590.           end
  591.           if @panorama2[i].bitmap != nil
  592.             @panorama2[i].bitmap.dispose
  593.             @panorama2[i].bitmap = nil
  594.           end
  595.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum)
  596.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  597.         when 8
  598.           if @panorama[i].bitmap != nil
  599.             @panorama[i].bitmap.dispose
  600.             @panorama[i].bitmap = nil
  601.           end
  602.           if @panorama2[i].bitmap != nil
  603.             @panorama2[i].bitmap.dispose
  604.             @panorama2[i].bitmap = nil
  605.           end
  606.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  607.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  608.         end
  609.       end
  610.       @old_panorama_status = @panorama_status.dup
  611.       @panorama_status[0] = @old_panorama_status[1]
  612.       @panorama_status[1] = @old_panorama_status[2]
  613.       @panorama_status[2] = @old_panorama_status[0]
  614.       @panorama_status[3] = @old_panorama_status[4]
  615.       @panorama_status[4] = @old_panorama_status[5]
  616.       @panorama_status[5] = @old_panorama_status[3]
  617.       @panorama_status[6] = @old_panorama_status[7]
  618.       @panorama_status[7] = @old_panorama_status[8]
  619.       @panorama_status[8] = @old_panorama_status[6]
  620.     elsif a > @old_plx and b < @old_ply
  621.       if a-1 >= 0
  622.         c = a-1
  623.       else
  624.         c = false
  625.       end  
  626.       wi = $game_map.width*32
  627.       if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width)
  628.         d = a+1
  629.       else
  630.         d = false
  631.       end
  632.       he = $game_map.height*32
  633.       if b+2 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  634.         e = b+2
  635.       else
  636.         e = false
  637.       end  
  638.       if b+1 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  639.         f = b+1
  640.       else
  641.         f = false
  642.       end     
  643.       for i in 0..8
  644.         case @panorama_status[i]
  645.         when 0
  646.           if @panorama[i].bitmap != nil
  647.             @panorama[i].bitmap.dispose
  648.             @panorama[i].bitmap = nil
  649.           end
  650.           if @panorama2[i].bitmap != nil
  651.             @panorama2[i].bitmap.dispose
  652.             @panorama2[i].bitmap = nil
  653.           end
  654.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  655.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  656.         when 3
  657.           if @panorama[i].bitmap != nil
  658.             @panorama[i].bitmap.dispose
  659.             @panorama[i].bitmap = nil
  660.           end
  661.           if @panorama2[i].bitmap != nil
  662.             @panorama2[i].bitmap.dispose
  663.             @panorama2[i].bitmap = nil
  664.           end
  665.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum)
  666.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  667.         when 6
  668.           if @panorama[i].bitmap != nil
  669.             @panorama[i].bitmap.dispose
  670.             @panorama[i].bitmap = nil
  671.           end
  672.           if @panorama2[i].bitmap != nil
  673.             @panorama2[i].bitmap.dispose
  674.             @panorama2[i].bitmap = nil
  675.           end
  676.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)     
  677.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  678.         end
  679.       end
  680.     else
  681.       if a-1 >= 0
  682.         c = a-1
  683.       else
  684.         c = false
  685.       end  
  686.       wi = $game_map.width*32
  687.       if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width)
  688.         d = a+1
  689.       else
  690.         d = false
  691.       end
  692.       if b-2 >= 0
  693.         e = b-2
  694.       else
  695.         e = false
  696.       end  
  697.       if b-1 >= 0
  698.         f = b-1
  699.       else
  700.         f = false
  701.       end     
  702.       for i in 0..8
  703.         case @panorama_status[i]
  704.         when 0
  705.           if @panorama[i].bitmap != nil
  706.             @panorama[i].bitmap.dispose
  707.             @panorama[i].bitmap = nil
  708.           end
  709.           if @panorama2[i].bitmap != nil
  710.             @panorama2[i].bitmap.dispose
  711.             @panorama2[i].bitmap = nil
  712.           end
  713.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  714.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  715.         when 3
  716.           if @panorama[i].bitmap != nil
  717.             @panorama[i].bitmap.dispose
  718.             @panorama[i].bitmap = nil
  719.           end
  720.           if @panorama2[i].bitmap != nil
  721.             @panorama2[i].bitmap.dispose
  722.             @panorama2[i].bitmap = nil
  723.           end
  724.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum)
  725.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  726.         when 6
  727.           if @panorama[i].bitmap != nil
  728.             @panorama[i].bitmap.dispose
  729.             @panorama[i].bitmap = nil
  730.           end
  731.           if @panorama2[i].bitmap != nil
  732.             @panorama2[i].bitmap.dispose
  733.             @panorama2[i].bitmap = nil
  734.           end
  735.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)     
  736.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  737.         end
  738.       end
  739.       @old_panorama_status = @panorama_status.dup
  740.       @panorama_status[0] = @old_panorama_status[2]
  741.       @panorama_status[1] = @old_panorama_status[0]
  742.       @panorama_status[2] = @old_panorama_status[1]
  743.       @panorama_status[3] = @old_panorama_status[5]
  744.       @panorama_status[4] = @old_panorama_status[3]
  745.       @panorama_status[5] = @old_panorama_status[4]
  746.       @panorama_status[6] = @old_panorama_status[8]
  747.       @panorama_status[7] = @old_panorama_status[6]
  748.       @panorama_status[8] = @old_panorama_status[7]
  749.     end
  750.     update_xy
  751.     m = @panorama[0].ox
  752.     if @panorama[0].ox < 0
  753.       for i in 0..8
  754.         @panorama[i].ox = Map_width+m
  755.         @panorama2[i].ox = Map_width+m
  756.       end     
  757.     else
  758.       for i in 0..8
  759.         @panorama[i].ox = -(Map_width)+m
  760.         @panorama2[i].ox = -(Map_width)+m
  761.       end     
  762.     end
  763.     @old_plx = a
  764.   end
  765.   #==============================================================================
  766.   # 精灵图像竖直变更
  767.   #==============================================================================  
  768.   def update_b(x,y,a,b)
  769.     if a-1 >= 0
  770.       c = a-1
  771.     else
  772.       c = false
  773.     end  
  774.     wi = $game_map.width*32
  775.     if a+1 <= (wi%Map_width == 0 ? (wi / Map_width - 1) : wi / Map_width)
  776.       d = a+1
  777.     else
  778.       d = false
  779.     end
  780.     if b-1 >= 0
  781.       e = b-1
  782.     else
  783.       e = false
  784.     end  
  785.     he = $game_map.height*32
  786.     if b+1 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height)
  787.       f = b+1
  788.     else
  789.       f = false
  790.     end
  791.     if b < @old_ply
  792.       for i in 0..8
  793.         case @panorama_status[i]
  794.         when 6
  795.           if @panorama[i].bitmap != nil
  796.             @panorama[i].bitmap.dispose
  797.             @panorama[i].bitmap = nil
  798.           end
  799.           if @panorama2[i].bitmap != nil
  800.             @panorama2[i].bitmap.dispose
  801.             @panorama2[i].bitmap = nil
  802.           end
  803.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  804.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  805.         when 7
  806.           if @panorama[i].bitmap != nil
  807.             @panorama[i].bitmap.dispose
  808.             @panorama[i].bitmap = nil
  809.           end
  810.           if @panorama2[i].bitmap != nil
  811.             @panorama2[i].bitmap.dispose
  812.             @panorama2[i].bitmap = nil
  813.           end
  814.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{a}-#{e}", @panorama_hue) if a.is_a?(Fixnum) and e.is_a?(Fixnum)
  815.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{a}-#{e}", @panorama_hue) if a.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  816.         when 8
  817.           if @panorama[i].bitmap != nil
  818.             @panorama[i].bitmap.dispose
  819.             @panorama[i].bitmap = nil
  820.           end
  821.           if @panorama2[i].bitmap != nil
  822.             @panorama2[i].bitmap.dispose
  823.             @panorama2[i].bitmap = nil
  824.           end
  825.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  826.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  827.         end
  828.       end
  829.       @old_panorama_status = @panorama_status.dup
  830.       @panorama_status[0] = @old_panorama_status[3]
  831.       @panorama_status[1] = @old_panorama_status[4]
  832.       @panorama_status[2] = @old_panorama_status[5]
  833.       @panorama_status[3] = @old_panorama_status[6]
  834.       @panorama_status[4] = @old_panorama_status[7]
  835.       @panorama_status[5] = @old_panorama_status[8]
  836.       @panorama_status[6] = @old_panorama_status[0]
  837.       @panorama_status[7] = @old_panorama_status[1]
  838.       @panorama_status[8] = @old_panorama_status[2]
  839.     else
  840.       for i in 0..8
  841.         case @panorama_status[i]
  842.         when 0
  843.           if @panorama[i].bitmap != nil
  844.             @panorama[i].bitmap.dispose
  845.             @panorama[i].bitmap = nil
  846.           end
  847.           if @panorama2[i].bitmap != nil
  848.             @panorama2[i].bitmap.dispose
  849.             @panorama2[i].bitmap = nil
  850.           end
  851.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  852.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  853.         when 1
  854.           if @panorama[i].bitmap != nil
  855.             @panorama[i].bitmap.dispose
  856.             @panorama[i].bitmap = nil
  857.           end
  858.           if @panorama2[i].bitmap != nil
  859.             @panorama2[i].bitmap.dispose
  860.             @panorama2[i].bitmap = nil
  861.           end
  862.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{a}-#{f}", @panorama_hue) if a.is_a?(Fixnum) and f.is_a?(Fixnum)
  863.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{a}-#{f}", @panorama_hue) if a.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  864.         when 2
  865.           if @panorama[i].bitmap != nil
  866.             @panorama[i].bitmap.dispose
  867.             @panorama[i].bitmap = nil
  868.           end
  869.           if @panorama2[i].bitmap != nil
  870.             @panorama2[i].bitmap.dispose
  871.             @panorama2[i].bitmap = nil
  872.           end
  873.           @panorama[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)     
  874.           @panorama2[i].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum) #and FileTest.directory?("Graphics/Panoramas/map/#{@panorama_name}_2")
  875.         end
  876.       end
  877.       @old_panorama_status = @panorama_status.dup
  878.       @panorama_status[0] = @old_panorama_status[6]
  879.       @panorama_status[1] = @old_panorama_status[7]
  880.       @panorama_status[2] = @old_panorama_status[8]
  881.       @panorama_status[3] = @old_panorama_status[0]
  882.       @panorama_status[4] = @old_panorama_status[1]
  883.       @panorama_status[5] = @old_panorama_status[2]
  884.       @panorama_status[6] = @old_panorama_status[3]
  885.       @panorama_status[7] = @old_panorama_status[4]
  886.       @panorama_status[8] = @old_panorama_status[5]
  887.     end
  888.     update_xy
  889.     n = @panorama[0].oy
  890.     if @panorama[0].oy < 0
  891.       for i in 0..8
  892.         @panorama[i].oy = Map_height+n
  893.         @panorama2[i].oy = Map_height+n
  894.       end     
  895.     else
  896.       for i in 0..8
  897.         @panorama[i].oy = -(Map_height)+n
  898.         @panorama2[i].oy = -(Map_height)+n
  899.       end     
  900.     end
  901.     @old_ply = b
  902.   end
  903.   #==============================================================================
  904.   # 设置远景图像
  905.   #==============================================================================
  906.   def update_panorama
  907.     for i in 0..8
  908.       if @panorama[i].bitmap != nil
  909.         @panorama[i].bitmap.dispose
  910.         @panorama[i].bitmap = nil
  911.       end
  912.     end
  913.     if @panorama_name != ""
  914.       x = $game_map.display_x / 4
  915.       a = x / Map_width + 1
  916.       y = $game_map.display_y / 4
  917.       b = y / Map_height + 1
  918.       @old_plx = a
  919.       @old_ply = b
  920.       if a-1 >= 0
  921.         c = a-1
  922.       else
  923.         c = false
  924.       end  
  925.       wi = $game_map.width*32
  926.       if a+1 <= (wi%Map_width == 0 ? wi / Map_width - 1 : wi / Map_width)and wi > 640
  927.         d = a+1
  928.       else
  929.         d = false
  930.       end
  931.       if b-1 >= 0
  932.         e = b-1
  933.       else
  934.         e = false
  935.       end  
  936.       he = $game_map.height*32
  937.       if b+1 <= (he%Map_height == 0 ? he / Map_height - 1 : he / Map_height) and he > 480
  938.         f = b+1
  939.       else
  940.         f = false
  941.       end
  942.       
  943.       @panorama2[0].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  944.       @panorama2[1].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{a}-#{e}", @panorama_hue) if a.is_a?(Fixnum) and e.is_a?(Fixnum)
  945.       @panorama2[2].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  946.       @panorama2[3].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum)
  947.       @panorama2[4].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{a}-#{b}", @panorama_hue) if a.is_a?(Fixnum) and b.is_a?(Fixnum)
  948.       @panorama2[5].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum)
  949.       @panorama2[6].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  950.       @panorama2[7].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{a}-#{f}", @panorama_hue) if a.is_a?(Fixnum) and f.is_a?(Fixnum)
  951.       @panorama2[8].bitmap = RPG::Cache.panorama(@path+@panorama_name+"_2/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)         
  952.       @panorama[0].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{e}", @panorama_hue) if c.is_a?(Fixnum) and e.is_a?(Fixnum)
  953.       @panorama[1].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{a}-#{e}", @panorama_hue) if a.is_a?(Fixnum) and e.is_a?(Fixnum)
  954.       @panorama[2].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{e}", @panorama_hue) if d.is_a?(Fixnum) and e.is_a?(Fixnum)
  955.       @panorama[3].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{b}", @panorama_hue) if c.is_a?(Fixnum) and b.is_a?(Fixnum)
  956.       @panorama[4].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{a}-#{b}", @panorama_hue) if a.is_a?(Fixnum) and b.is_a?(Fixnum)
  957.       @panorama[5].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{b}", @panorama_hue) if d.is_a?(Fixnum) and b.is_a?(Fixnum)
  958.       @panorama[6].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{c}-#{f}", @panorama_hue) if c.is_a?(Fixnum) and f.is_a?(Fixnum)
  959.       @panorama[7].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{a}-#{f}", @panorama_hue) if a.is_a?(Fixnum) and f.is_a?(Fixnum)
  960.       @panorama[8].bitmap = RPG::Cache.panorama(@path+@panorama_name+"/#{d}-#{f}", @panorama_hue) if d.is_a?(Fixnum) and f.is_a?(Fixnum)     
  961.     end
  962.     Graphics.frame_reset
  963.   end
  964.   #==============================================================================
  965.   # 设置精灵位置
  966.   #==============================================================================
  967.   def update_xy
  968.     for i in 0..8
  969.       case @panorama_status[i]
  970.       when 0
  971.         @panorama[i].x = (640-Map_width)/2-Map_width
  972.         @panorama[i].y = (480-Map_height)/2-Map_height
  973.         @panorama2[i].x = (640-Map_width)/2-Map_width
  974.         @panorama2[i].y = (480-Map_height)/2-Map_height
  975.       when 1
  976.         @panorama[i].x = (640-Map_width)/2
  977.         @panorama[i].y = (480-Map_height)/2-Map_height
  978.         @panorama2[i].x = (640-Map_width)/2
  979.         @panorama2[i].y = (480-Map_height)/2-Map_height
  980.       when 2
  981.         @panorama[i].x = (640-Map_width)/2+Map_width
  982.         @panorama[i].y = (480-Map_height)/2-Map_height
  983.         @panorama2[i].x = (640-Map_width)/2+Map_width
  984.         @panorama2[i].y = (480-Map_height)/2-Map_height
  985.       when 3
  986.         @panorama[i].x = (640-Map_width)/2-Map_width
  987.         @panorama[i].y = (480-Map_height)/2
  988.         @panorama2[i].x = (640-Map_width)/2-Map_width
  989.         @panorama2[i].y = (480-Map_height)/2
  990.       when 4
  991.         @panorama[i].x = (640-Map_width)/2
  992.         @panorama[i].y = (480-Map_height)/2
  993.         @panorama2[i].x = (640-Map_width)/2
  994.         @panorama2[i].y = (480-Map_height)/2
  995.       when 5
  996.         @panorama[i].x = (640-Map_width)/2+Map_width
  997.         @panorama[i].y = (480-Map_height)/2
  998.         @panorama2[i].x = (640-Map_width)/2+Map_width
  999.         @panorama2[i].y = (480-Map_height)/2
  1000.       when 6
  1001.         @panorama[i].x = (640-Map_width)/2-Map_width
  1002.         @panorama[i].y = (480-Map_height)/2+Map_height
  1003.         @panorama2[i].x = (640-Map_width)/2-Map_width
  1004.         @panorama2[i].y = (480-Map_height)/2+Map_height
  1005.       when 7
  1006.         @panorama[i].x = (640-Map_width)/2
  1007.         @panorama[i].y = (480-Map_height)/2+Map_height
  1008.         @panorama2[i].x = (640-Map_width)/2
  1009.         @panorama2[i].y = (480-Map_height)/2+Map_height
  1010.       when 8
  1011.         @panorama[i].x = (640-Map_width)/2+Map_width
  1012.         @panorama[i].y = (480-Map_height)/2+Map_height
  1013.         @panorama2[i].x = (640-Map_width)/2+Map_width
  1014.         @panorama2[i].y = (480-Map_height)/2+Map_height
  1015.       end
  1016.     end
  1017.   end#结束update_xy
  1018. end
  1019. #==============================================================================
  1020. # 本脚本来自www.66rpg.com,使用前请参考制作录像
  1021. #==============================================================================
复制代码

点评

唉·算了,看来么办法  发表于 2015-5-16 19:04
我试试  发表于 2015-5-16 18:57
调高了显示高度,先试一下能不能显示出来。  发表于 2015-5-16 16:16

评分

参与人数 1星屑 +100 梦石 +1 收起 理由
RyanBern + 100 + 1 认可答案

查看全部评分

xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
97 小时
注册时间
2015-3-27
帖子
225
16
 楼主| 发表于 2015-5-16 19:19:47 | 只看该作者
芯☆淡茹水 发表于 2015-5-16 16:07
梦幻西游,还不是西游,,,。说的 梦单 貌似就是梦幻西游吧。
原脚本的双远景给天气代入一个Z值较低的显示 ...

谢谢你了,我找出原因了,原来是远景脚本里面刷新气候那些实例变量前都打了#号
我的博客:http://wang1212.github.io/
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
226 小时
注册时间
2015-5-8
帖子
329
17
发表于 2015-5-16 19:49:12 | 只看该作者
消除天氣請在事件頁天氣一覽設定為無。
另外這腳本除了自定義圖片,其它內容均是腳本生成。
不需要添加另外的素材。

点评

喔 谢谢  发表于 2015-5-16 20:21
我是妖精蕾貝卡,沉默少言,孤獨自卑。完成了一個小遊戲,歡迎試玩。同時也歡迎試玩師傅的遊戲,謝謝。
現正在努力學習事件中,有不明白的地方請各位指教。

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2014-8-19
帖子
12
18
发表于 2016-4-28 11:11:34 | 只看该作者
妖精蕾贝卡 发表于 2015-5-14 07:29
個人感覺夠用了

这个天气脚本想要改变显示的尺寸怎么改呢,因为我游戏分辨率是1280*704的,所以这个脚本只能显示默认的尺寸大小。(ΦωΦ)
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1358
在线时间
1295 小时
注册时间
2012-8-4
帖子
749
19
发表于 2016-4-28 12:41:23 | 只看该作者
诗俊熙 发表于 2016-4-28 11:11
这个天气脚本想要改变显示的尺寸怎么改呢,因为我游戏分辨率是1280*704的,所以这个脚本只能显示默认的尺 ...

if sprite.opacity < 64 or x < -50 or x > 750 or y < -300 or y > 500
          sprite.x = rand(800) - 50 + @ox
          sprite.y = rand(800) - 200 + @oy
          sprite.opacity = 255
        end
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
47 小时
注册时间
2014-8-19
帖子
12
20
发表于 2016-4-28 15:07:01 | 只看该作者
夜狠简单 发表于 2016-4-28 12:41
if sprite.opacity < 64 or x < -50 or x > 750 or y < -300 or y > 500
          sprite.x = rand(800 ...

if sprite.opacity < 64 or x < -50 or x > 750 or y < -300 or y > 500
这个判断会报错,这是什么意思呢?

点评

这个脚本里面的,原来是800*800的大小  发表于 2016-4-28 15:39
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 21:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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