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

Project1

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

[已经过期] 运行时更改地图图块的脚本求修改

[复制链接]

Lv1.梦旅人

梦石
0
星屑
94
在线时间
648 小时
注册时间
2009-2-3
帖子
238
跳转到指定楼层
1
发表于 2013-9-5 16:52:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 lanyaolove 于 2013-9-5 16:54 编辑

这个脚本是把更改后的数据存在存档中的 可否更改后直接更改Map文件 而不需要存档?
使用方法:事件脚本中 $game_map.hzhj(384)
384为第一个图块
  1. #==============================================================================
  2. # ■ Game_System
  3. #==============================================================================

  4. class Game_System
  5.   attr_accessor :hzhj_map
  6.   alias hzhj_sys_ini initialize
  7.   def initialize
  8.     @hzhj_map = {}
  9.     hzhj_sys_ini
  10.   end
  11. end


  12. #==============================================================================
  13. # ■ Game_Map
  14. #==============================================================================

  15. class Game_Map
  16.   alias hzhj_setup_map setup
  17.   def setup(map_id)
  18.     hzhj_setup_map(map_id)
  19.     if $game_system.hzhj_map[@map_id] != nil
  20.       for a in $game_system.hzhj_map[@map_id]
  21.         @map.data[a[0],a[1],a[2]] = a[3]
  22.       end
  23.     end
  24.   end
  25.   
  26.   def data=(new_data)
  27.     @map.data = new_data
  28.     return @map
  29.   end
  30.   
  31.   def hzhj(c, f = 0)
  32.     a = $game_player.x;b = $game_player.y
  33.     d = [];d.push(a);d.push(b);d.push(f)
  34.     d.push(c)
  35.     e = $game_map.map_id
  36.     if $game_system.hzhj_map[e] == nil
  37.       $game_system.hzhj_map[e] = []
  38.       $game_system.hzhj_map[e].push(d)
  39.     else
  40.       $game_system.hzhj_map[e].push(d)
  41.     end
  42.     $game_map.data[a,b,f] = c
  43.   end
  44. end

  45. #==============================================================================
  46. # ■ Spriteset_Map
  47. #==============================================================================
  48. class Spriteset_Map
  49.   alias hzhj_spri_map_upd update
  50.   def update
  51.     if @tilemap.map_data != $game_map.data
  52.       @tilemap.map_data = $game_map.data
  53.     end
  54.     hzhj_spri_map_upd
  55.   end
  56. end
复制代码
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

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

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

GMT+8, 2024-4-26 23:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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