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

Project1

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

如何将XP的地图转移到vx中?

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
100
在线时间
3 小时
注册时间
2008-2-18
帖子
86
跳转到指定楼层
1
发表于 2008-3-30 23:56:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如何将XP的地图转移到vx中?  很郁闷 !~

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

2
发表于 2008-3-30 23:58:21 | 只看该作者
回答是,不能。我觉得。

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
100
在线时间
3 小时
注册时间
2008-2-18
帖子
86
3
 楼主| 发表于 2008-3-31 00:06:27 | 只看该作者
可是没办法么?
回复 支持 反对

使用道具 举报

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

4
发表于 2008-3-31 00:10:08 | 只看该作者
地图元件不一样,而且VX可扩展的空间很少。除非用脚本来扩展。
再说了,XP用好好的,怎么要换成VX呢?

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

很傻很天真

梦石
0
星屑
55
在线时间
3 小时
注册时间
2007-3-13
帖子
3667
5
发表于 2008-3-31 04:21:49 | 只看该作者
远景图...不过只限于小型地图
  先截图然后远景 会了吧
回复 支持 反对

使用道具 举报

Lv2.观梦者

神隐的主犯

梦石
0
星屑
299
在线时间
271 小时
注册时间
2008-2-22
帖子
7691

贵宾

6
发表于 2008-3-31 04:23:21 | 只看该作者
以下引用火鸡三毛老大于2008-3-30 20:21:49的发言:

远景图...不过只限于小型地图
先截图然后远景 会了吧

不推荐用这种做法。这样做会使游戏体积增大。

《天空之城 —— 破碎的命运》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
70
在线时间
386 小时
注册时间
2007-7-27
帖子
4106

开拓者

7
发表于 2008-3-31 21:44:46 | 只看该作者
可以的,以前66有过一个vip限制贴

但是回档回掉了

那个66求学记vx版用的就是这方法
吸吸
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1697
在线时间
3038 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

8
发表于 2008-3-31 22:53:50 | 只看该作者
应该很简单的吧。
其实就这么几步:把xp的那些默认脚本f1(里面的那些)拷贝到vx中。
然后使用某柳的tileset转换方式。
这个我试验过,可以是可以,但是不稳定。
大概范例脚本在vx求学记里面有。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
64
在线时间
4352 小时
注册时间
2007-8-31
帖子
1982
9
发表于 2008-3-31 23:28:24 | 只看该作者
那个回档的我又把它找回来了!
  1. #==============================================================================
  2. # ■ Spriteset_Map
  3. #------------------------------------------------------------------------------
  4. #  处理地图画面活动块和元件的类。本类在
  5. # Scene_Map 类的内部使用。
  6. #==============================================================================

  7. class Spriteset_Map
  8.   #--------------------------------------------------------------------------
  9.   # ● 初始化对像
  10.   #--------------------------------------------------------------------------
  11.   def initialize
  12.     # 生成显示端口
  13.     @viewport1 = Viewport.new(0, 0, 640, 480)
  14.     @viewport2 = Viewport.new(0, 0, 640, 480)
  15.     @viewport3 = Viewport.new(0, 0, 640, 480)
  16.     @viewport2.z = 200
  17.     @viewport3.z = 5000
  18.     # 生成元件地图
  19.     # @tilemap = Tilemap.new(@viewport1)
  20.     # @tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)
  21.     # for i in 0..6
  22.     #   autotile_name = $game_map.autotile_names[i]
  23.     #   @tilemap.autotiles[i] = RPG::Cache.autotile(autotile_name)
  24.     # end
  25.     # @tilemap.map_data = $game_map.data
  26.     # @tilemap.priorities = $game_map.priorities
  27.    
  28.     @map_sp = []
  29.     for i in 0...$game_map.height + 7
  30.       @map_sp[i] = Sprite.new(@viewport1)
  31.       @map_sp[i].bitmap = Bitmap.new($game_map.width * 32 , 192)
  32. #      @map_sp[i].bitmap.draw_text(0, 0, $game_map.width * 32 , 32, i.to_s)
  33.       @map_sp[i].z = 32 + i * 32
  34.     end
  35.    
  36.     for i in 0...$game_map.width
  37.       for j in 0...$game_map.height
  38.         for k in [0,1,2]
  39.           tile_id = $game_map.data[i,j,k]
  40.           next if tile_id == 0
  41.           numb = j + $game_map.priorities[tile_id]
  42.           if tile_id < 384
  43.             tid = tile_id / 48
  44.             bmp = at48(tile_id - tid * 48, RPG::Cache.autotile($game_map.autotile_names[tid-1]))
  45.             tx = i * 32
  46.             ty = (5 - $game_map.priorities[tile_id])* 32
  47.             @map_sp[numb].bitmap.blt(tx, ty, bmp, bmp.rect)
  48.             next
  49.           end
  50.           x = (tile_id - 384) % 8 * 32
  51.           y = (tile_id - 384) / 8 * 32
  52.           rect = Rect.new(x, y, 32, 32)
  53.           tx = i * 32
  54.           ty = (5 - $game_map.priorities[tile_id])* 32
  55.           @map_sp[numb].bitmap.blt(tx, ty, RPG::Cache.tileset($game_map.tileset_name), rect)
  56. #          @map_sp[numb].bitmap.draw_text(tx, ty, 32, 32, numb.to_s)
  57.         end
  58.       end
  59.     end
  60.    
  61.     for i in 0...$game_map.height + 6
  62.       @map_sp[i].y = i * 32 -  160
  63.     end
  64.    
  65.    
  66.     # 生成远景平面
  67.     @panorama = Plane.new(@viewport1)
  68.     @panorama.z = -1000
  69.     # 生成雾平面
  70.     @fog = Plane.new(@viewport1)
  71.     @fog.z = 3000
  72.     # 生成角色活动块
  73.     @character_sprites = []
  74.     for i in $game_map.events.keys.sort
  75.       sprite = Sprite_Character.new(@viewport1, $game_map.events[i])
  76.       @character_sprites.push(sprite)
  77.     end
  78.     @character_sprites.push(Sprite_Character.new(@viewport1, $game_player))
  79.     # 生成天气
  80.     @weather = RPG::Weather.new(@viewport1)
  81.     # 生成图片
  82.     @picture_sprites = []
  83.     for i in 1..50
  84.       @picture_sprites.push(Sprite_Picture.new(@viewport2,
  85.         $game_screen.pictures[i]))
  86.     end
  87.     # 生成计时器块
  88.     @timer_sprite = Sprite_Timer.new
  89.     # 刷新画面
  90.     update
  91.   end
  92.   #--------------------------------------------------------------------------
  93.   # ● 释放
  94.   #--------------------------------------------------------------------------
  95.   def dispose
  96.     # 释放元件地图
  97.     # @tilemap.tileset.dispose
  98.     # for i in 0..6
  99.     #   @tilemap.autotiles[i].dispose
  100.     # end
  101.     # @tilemap.dispose
  102.     # 释放远景平面
  103.     @panorama.dispose
  104.     # 释放雾平面
  105.     @fog.dispose
  106.     # 释放角色活动块
  107.     for sprite in @character_sprites
  108.       sprite.dispose
  109.     end
  110.     # 释放天候
  111.     @weather.dispose
  112.     # 释放图片
  113.     for sprite in @picture_sprites
  114.       sprite.dispose
  115.     end
  116.     # 释放计时器块
  117.     @timer_sprite.dispose
  118.     # 释放显示端口
  119.     @viewport1.dispose
  120.     @viewport2.dispose
  121.     @viewport3.dispose
  122.   end
  123.   #--------------------------------------------------------------------------
  124.   # ● 刷新画面
  125.   #--------------------------------------------------------------------------
  126.   def update
  127.     # 远景与现在的情况有差异发情况下
  128.     if @panorama_name != $game_map.panorama_name or
  129.        @panorama_hue != $game_map.panorama_hue
  130.       @panorama_name = $game_map.panorama_name
  131.       @panorama_hue = $game_map.panorama_hue
  132.       if @panorama.bitmap != nil
  133.         @panorama.bitmap.dispose
  134.         @panorama.bitmap = nil
  135.       end
  136.       if @panorama_name != ""
  137.         @panorama.bitmap = RPG::Cache.panorama(@panorama_name, @panorama_hue)
  138.       end
  139.       Graphics.frame_reset
  140.     end
  141.     # 雾与现在的情况有差异的情况下
  142.     if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
  143.       @fog_name = $game_map.fog_name
  144.       @fog_hue = $game_map.fog_hue
  145.       if @fog.bitmap != nil
  146.         @fog.bitmap.dispose
  147.         @fog.bitmap = nil
  148.       end
  149.       if @fog_name != ""
  150.         @fog.bitmap = RPG::Cache.fog(@fog_name, @fog_hue)
  151.       end
  152.       Graphics.frame_reset
  153.     end
  154.     # 刷新元件地图
  155.     for i in 0...$game_map.height + 6
  156.       @map_sp[i].y = i * 32 -  160 - $game_map.display_y / 4
  157.       @map_sp[i].x = - $game_map.display_x / 4
  158.       @map_sp[i].z = (i * 128 - $game_map.display_y + 3) / 4 + 32
  159.     end
  160. #    @tilemap.ox = $game_map.display_x / 4
  161. #    @tilemap.oy = $game_map.display_y / 4
  162. #    @tilemap.update
  163.     # 刷新远景平面
  164.     @panorama.ox = $game_map.display_x / 8
  165.     @panorama.oy = $game_map.display_y / 8
  166.     # 刷新雾平面
  167.     @fog.zoom_x = $game_map.fog_zoom / 100.0
  168.     @fog.zoom_y = $game_map.fog_zoom / 100.0
  169.     @fog.opacity = $game_map.fog_opacity
  170.     @fog.blend_type = $game_map.fog_blend_type
  171.     @fog.ox = $game_map.display_x / 4 + $game_map.fog_ox
  172.     @fog.oy = $game_map.display_y / 4 + $game_map.fog_oy
  173.     @fog.tone = $game_map.fog_tone
  174.     # 刷新角色活动块
  175.     for sprite in @character_sprites
  176.       sprite.update
  177.     end
  178.     # 刷新天候图形
  179.     @weather.type = $game_screen.weather_type
  180.     @weather.max = $game_screen.weather_max
  181.     @weather.ox = $game_map.display_x / 4
  182.     @weather.oy = $game_map.display_y / 4
  183.     @weather.update
  184.     # 刷新图片
  185.     for sprite in @picture_sprites
  186.       sprite.update
  187.     end
  188.     # 刷新计时器块
  189.     @timer_sprite.update
  190.     # 设置画面的色调与震动位置
  191.     @viewport1.tone = $game_screen.tone
  192.     @viewport1.ox = $game_screen.shake
  193.     # 设置画面的闪烁色
  194.     @viewport3.color = $game_screen.flash_color
  195.     # 刷新显示端口
  196.     @viewport1.update
  197.     @viewport3.update
  198.   end
  199.   
  200.   def at48(i, bmp)
  201.     a = [
  202.       [27,28,5 ,28,27,6 ,5 ,6 ,27,28,5 ,28,27,6 ,5 ,6 ],
  203.       [33,34,33,34,33,34,33,34,33,12,33,12,33,12,33,12],
  204.       [27,28,5 ,28,27,6 ,5 ,6 ,27,28,5 ,28,27,6 ,5 ,6 ],
  205.       [11,34,11,34,11,34,11,34,11,12,11,12,11,12,11,12],
  206.       [25,26,25,6 ,25,26,25,6 ,15,16,15,16,15,16,15,16],
  207.       [31,32,31,32,31,12,31,12,21,22,21,12,11,22,11,12],
  208.       [29,30,29,30,5 ,30,5 ,30,39,40,5 ,40,39,6 ,5 ,6 ],
  209.       [35,36,11,36,35,36,11,36,45,46,45,46,45,46,45,46],
  210.       [25,30,15,16,13,14,13,14,17,18,17,18,41,42,5 ,42],
  211.       [31,36,45,46,19,20,19,12,23,24,11,24,47,48,47,48],
  212.       [37,38,37,6 ,13,18,13,14,37,42,17,18,13,18,1 ,2 ],
  213.       [43,44,43,44,19,24,43,44,43,48,47,48,43,48,7 ,8 ]
  214.       ]
  215.     bitmap = Bitmap.new(32, 32)
  216.     xy = getrect(i)
  217.     y = xy[1] * 2
  218.     x = xy[0] * 2
  219.     #p i,y,x,a[y][x],a[y][x+1],a[y+1][x],a[y+1][x+1]
  220.     bitmap.blt(0, 0, bmp, Rect.new(get_at(a[y][x])[0] * 16,get_at(a[y][x])[1] * 16, 16,16))
  221.     bitmap.blt(16, 0, bmp, Rect.new(get_at(a[y][x+1])[0] * 16,get_at(a[y][x+1])[1] * 16, 16,16))
  222.     bitmap.blt(0, 16, bmp, Rect.new(get_at(a[y+1][x])[0] * 16,get_at(a[y+1][x])[1]* 16, 16,16))
  223.     bitmap.blt(16, 16, bmp, Rect.new(get_at(a[y+1][x+1])[0] * 16,get_at(a[y+1][x+1])[1]* 16, 16,16))
  224.     return bitmap
  225.    
  226.   end
  227.   
  228.   def getrect(id)
  229.     x = id % 8
  230.     y = id / 8
  231.     return [x, y]
  232.   end   
  233.   
  234.   def get_at(id)
  235.     id -= 1
  236.     x = id % 6
  237.     y = id / 6
  238.     return [x, y]
  239.   end  
  240.       
  241. end
复制代码
我真是王小二过年,一年不如一年。目前正在寻找状态中,努力找回当初的动力!
“底蕴制作者”—asperta最新博客开通!以后将在这里更新制作进度报告!
我的作品官网:http://www.asperta.org/
ASPERTA世界论坛:http://bbs.asperta.org/


回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-3-21
帖子
79
10
发表于 2008-4-1 00:09:25 | 只看该作者
根本不行de吖~!(*^__^*) 嘻嘻……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-11 06:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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