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

Project1

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

[已经解决] 如何用一行脚本实现让事件回到它的初始位置?

[复制链接]

Lv4.逐梦者

梦石
0
星屑
6483
在线时间
119 小时
注册时间
2020-1-8
帖子
234
1
发表于 2021-7-22 21:25:24 | 显示全部楼层
本帖最后由 RPGzh500223 于 2021-7-22 21:56 编辑

一行……
  1. class Game_Map; def ini_event_xy; @events.each{|k, v|v.moveto(@map.events[k].x, @map.events[k].y)}; end; end   
复制代码

数据存在地图里 比如1号地图数据就在“Data/Map001.rxdata”

既然有赞就完善一下方法(支持单个事件位置的初始化)
RUBY 代码复制
  1. class Game_Map
  2.   def ini_event_xy(id = -1, *ids)
  3.     if id == -1
  4.       @events.each{|k, v|v.moveto(@map.events[k].x, @map.events[k].y)}
  5.       return
  6.     end
  7.     (ids << id).each do |i|
  8.       next if (_event = @events[i]) == nil
  9.       _event.moveto(@map.events[i].x, @map.events[i].y)
  10.     end
  11.   end
  12. end

评分

参与人数 2星屑 +100 +2 收起 理由
RyanBern + 100 + 1 认可答案
纯属小虫 + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-20 17:08

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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