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

Project1

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

[已经解决] F1帮助文档脚本中的制作传送物品是怎么实现的?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
101 小时
注册时间
2017-1-9
帖子
6
跳转到指定楼层
1
发表于 2017-4-18 22:32:52 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 AZERAL 于 2017-4-19 17:04 编辑

虽然小弟我勉强能看懂F1帮助文档所有的脚本啦,但唯独制作传送物品这个脚本一直看不懂(如果大家有其他脚本入门实践篇的问题的话,我也能尽力解决啦
虽然本人对脚本不是太懂,可我已经尽力按照手册上的方法做了,但是还是没有成功实现传送物品的效果—在包含城镇等地点的菜单中选择任意地点之后选择物品进行传送一次
所以在这里希望各位大佬们能够帮帮忙,小弟在这里先谢谢啦
这是我写的传送物品的代码,也不知道对不对:
RUBY 代码复制
  1. class Window_Teleport < Window_Command
  2.   def initialize
  3.     super(0, 0)
  4.     hide
  5.     deactivate
  6.   end
  7. end
  8.   def window_width
  9.     return 240
  10.   end
  11.   def window_height
  12.     Graphics.height
  13.   end
  14.   TELEPORT_PLACES =
  15.     [
  16.       [2, "草地2", 2, 7, 7],
  17.       [3, "草地3", 3, 7, 7],
  18.       [4, "草地4", 4, 7, 7],
  19.     ]
  20.     def make_command_list
  21.     TELEPORT_PLACES.each do |place|
  22.       if $game_switches[place[0]]
  23.         add_command(place[1], :teleport, true, place)
  24.       end
  25.     end
  26. end
  27. class Scene_ItemBase
  28.    alias xxx001_start start
  29.   def start
  30.     xxx001_start
  31.     @teleport_window = Window_Teleport.new
  32.     @teleport_window.set_handler(:teleport, method(:on_teleport))
  33.     @teleport_window.set_handler(:cancel, method(:on_teleport_cancel))
  34.   end
  35.   alias xxx001_determine_item determine_item
  36.   def determine_item
  37.     if item.note.include?("<TELEPORT>")
  38.       show_sub_window(@teleport_window)
  39.      end
  40.     else
  41.       xxx001_determine_item
  42.     end
  43. end
  44.    def on_teleport
  45.     place = @teleport_window.current_ext
  46.     $game_player.reserve_transfer(place[2], place[3], place[4])
  47.     SceneManager.goto(Scene_Map)
  48.   end
  49.   def on_teleport_cancel
  50.     hide_sub_window(@teleport_window)
  51.   end

下面是工程失败的截图以及我做的传送物品和技能的范例:

結果.png (406.66 KB, 下载次数: 35)

失败的结果

失败的结果

1.zip

1.43 MB, 下载次数: 103

试验范例

本人只是一个新手小白而已啦

Lv1.梦旅人

梦石
0
星屑
50
在线时间
101 小时
注册时间
2017-1-9
帖子
6
5
 楼主| 发表于 2017-4-19 16:23:55 | 只看该作者
魔法丶小肉包 发表于 2017-4-19 16:01
从上往下数第二个end去掉,然后在
if $game_switches]
        add_command(place[1], :teleport, true, pl ...

十分感謝,終於搞定了啦
本人只是一个新手小白而已啦
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6260
在线时间
1481 小时
注册时间
2015-7-25
帖子
652

开拓者

4
发表于 2017-4-19 16:01:46 | 只看该作者
从上往下数第二个end去掉,然后在
if $game_switches[place[0]]
        add_command(place[1], :teleport, true, place)
end
的下面再加一个end

评分

参与人数 1星屑 +250 收起 理由
RaidenInfinity + 250 认可答案

查看全部评分

笨肉包的首款像素OC游戏《花城梦之心》尝试制作中~
目前的坑 【不可思议的迷宫】幽灵契约外传:歌莉娅
持续更新中~ 当前进度 v0.28
大版本更新时才会更新网盘文件,预计下次大版本更新:v0.30
完成度:
主线 15% 支线 0% 数据库 6% 系统 86% 美术 6%
两边同时填坑~
( 这里是笨肉包~专修魔法!目标是大魔法师!
( 坑太大啦,一个人填不完啦hhh 一定会填完的嗯...
( 每天都和bug们比试魔力~吾之魔法将扫平一切!
( 弱点是美术,魔法修行之余再补补课吧~
( 哼哼哼~这便是魔法的力量!
大家都离开啦,笨肉包也不知道还能坚持多久呀...
这是属于笨肉包一个人的旅行(再见了...蚊子湯,七重酱,笨肉包永远想你们!TwT
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
101 小时
注册时间
2017-1-9
帖子
6
3
 楼主| 发表于 2017-4-19 14:33:24 | 只看该作者
喵呜喵5 发表于 2017-4-18 23:01
允许传送的开关打开了吗?

按照制作传送点的清单[开关 ID,传送点的名称,地图 ID,X 坐标, Y 坐标]来理解的话,开关 ID就是传送开关吗?
如果是的话,我在进入每一地点时都设了打开指定开关的事件,但是在菜单中选择传送物品依然不能显示传送点
本人只是一个新手小白而已啦
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21631
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2017-4-18 23:01:55 | 只看该作者
允许传送的开关打开了吗?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 10:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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