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

Project1

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

求 让事件记住自己位置的方法

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-5-29
帖子
4
跳转到指定楼层
1
发表于 2009-5-29 05:58:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
在1号地图上某个事件移动到了右上角,当进入别的地图,再回来发现这个事件又回到了自己原来的地方。有什么办法可以解决吗?
最好不要太麻烦,因为有很多事件的~~~~{/pz}
此贴于 2009-5-30 10:35:06 被版主darkten提醒,请楼主看到后对本贴做出回应。
版务信息:版主帮忙结贴~

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3417
在线时间
3628 小时
注册时间
2006-9-6
帖子
37402

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

2
发表于 2009-5-29 06:01:53 | 只看该作者
站上有提供办法,不过也得手动的……
据说有人有自动版的,不过暂时没发现…… - -
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
0 小时
注册时间
2009-5-29
帖子
4
3
 楼主| 发表于 2009-5-29 06:03:52 | 只看该作者
应该以什么为关键字 查询呢?
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3417
在线时间
3628 小时
注册时间
2006-9-6
帖子
37402

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

4
发表于 2009-5-29 06:06:11 | 只看该作者
http://rpg.blue/viewthread.php?tid=104199&page=2  中
[quote]劍之飛龍☆



点数:103
称号:龙骑
经验:42882
帖子:2209
注册:2007-12-31
状态:离线 档案 搜索 邮件 短信 引用  第16楼

我确实有某个脚本可以很好解决某些问题  
[/quote]
建议联系此人…… - -
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
65
在线时间
433 小时
注册时间
2007-5-1
帖子
993
5
发表于 2009-5-29 06:33:18 | 只看该作者
事件A(0,0)、B(5,3)。

事件A从(0,0)移动到(5,3),开关打开,事件A消失,事件B出现,也就是B代替了A,大概就是这样子……

嗯,不能浪费签名了,打广告。本人的悲剧作品:
坑化游戏《龙之影》      R剧《星空》     小游戏《剑与拳头》
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
93 小时
注册时间
2008-5-16
帖子
745
6
发表于 2009-5-29 06:48:39 | 只看该作者
让该事件并行处理
然后用事件里的脚本功能
内容:

$game_map.events[@event_id].moveto($game_map.width,0)
# @event_id 是本事件的ID,自己可以更换。


这样切换地图后也可以让它直接跑到右上角
回复 支持 反对

使用道具 举报

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
7
发表于 2009-5-29 06:57:10 | 只看该作者
不可能不麻烦,
无论要用纯事件做或脚本制作都很困难,

其中的一个原因需要庞大的变量去存取这些所有事件(或NPC)的座标,
当地图很多时 会更可观


如果单一个还好解决

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
253
在线时间
574 小时
注册时间
2006-8-25
帖子
969
8
发表于 2009-5-29 15:42:13 | 只看该作者
不知道我的方法合不合用
我做游戏的时候,关于这个事件位置是这样处理的
原理就是利用:"多个事件,取而代之"

事件1
事件2
在"事件1"要移动到的地方加1个"事件2"
找个默契使"事件1"消失(独立开关,开关,变量等等都可以做到),"事件2"变成你需要的条件
这个默契比如可以说比如是你刚才说的"当进入别的地图"这个事件加一个 "001开关 == ON"
"事件1"加一个空白事件,"001开关 == ON"时打开
"事件2"设置成需要的效果,"001开关 == ON"时打开
............省略...
回复 支持 反对

使用道具 举报

Lv3.寻梦者

小柯的徒弟

梦石
0
星屑
1500
在线时间
1157 小时
注册时间
2008-5-24
帖子
3085

贵宾

9
发表于 2009-5-29 17:16:48 | 只看该作者
一劳永逸-v-
class Game_Map
  alias old_setup setup
  def setup(jiong)
    if @lv_x == nil
      @lv_x = []
      @lv_y = []
      @lv_direction = []
    end
    if @lv_x[jiong]==nil
        @lv_x[jiong]=[]
        @lv_y[jiong]=[]
        @lv_direction[jiong]=[]
    end
    old_setup(jiong)
  end
  def lv_x(one,two)
    return @lv_x[one][two]
  end
  def lv_y(one,two)
    return @lv_y[one][two]
  end
  def lv_x2(one,two,three)
    @lv_x[one][two]=three
  end
  def lv_y2(one,two,three)
    @lv_y[one][two]=three
  end
  def lv_direction(one,two)
    return @lv_direction[one][two]
  end
  def lv_direction2(one,two,three)
    @lv_direction[one][two]=three
  end
end


class Game_Event
  attr_reader   :id
  attr_reader   :map_id
  alias old_update update
  def update
    old_update
    $game_map.lv_x2(@map_id,@id,self.x)
    $game_map.lv_y2(@map_id,@id,self.y)
    $game_map.lv_direction2(@map_id,@id,self.direction)
  end
  def initialize(map_id, event)
    super()
    @map_id = map_id
    @event = event
    @id = @event.id
    @erased = false
    @starting = false
    @through = true
    if $game_map.lv_x(@map_id,@id)!=nil and !$lv_switches
      @event.x = $game_map.lv_x(@map_id,@id)
      @event.y = $game_map.lv_y(@map_id,@id)
      @direction = $game_map.lv_direction(@map_id,@id)
    end
    moveto(@event.x, @event.y)
    refresh
  end
end
class Game_Temp
attr_accessor :lv_switches
end

效果很囧……支持读档。如果不想要的时候,可以利用 事件中的 【脚本】 功能,
$game_temp.lv_switches = true

又想要时,
$game_temp.lv_switches = false
系统信息:本贴由本区版主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

龙皇

梦石
0
星屑
50
在线时间
83 小时
注册时间
2007-8-8
帖子
2956
10
发表于 2009-5-29 21:07:39 | 只看该作者
LS思路太厉害了..佩服
原来龙仔把它想得太复杂了


於是留名之

提议「旅」
把该脚本发至
RMXP 原创技术发布区

                签名图来自:無限のファンタジア
                 我的RMXP专题空间--龙使传说
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-7-21 13:23

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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