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

Project1

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

[已经过期] 如何在全部地图中做宠物

[复制链接]

Lv1.梦旅人

梦石
0
星屑
85
在线时间
87 小时
注册时间
2013-1-13
帖子
66
跳转到指定楼层
1
发表于 2015-3-30 08:19:00 手机端发表。 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
如果只在一个地图中做一直靠近主角的宠物,换地图后就没有了,而且回之前的地图后宠物位置会重置,能否做一个与主角一起行动的宠物,但不加入角色中,因为我想它会踩陷阱,而不是单纯的模仿主角路线

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
2
发表于 2015-3-30 08:40:32 | 只看该作者
原來的隊伍成員跟隨要不要保留?不用的話我正好寫過類似的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
85
在线时间
87 小时
注册时间
2013-1-13
帖子
66
3
 楼主| 发表于 2015-3-30 08:56:40 手机端发表。 | 只看该作者
howhow1314 发表于 2015-3-30 08:40  原來的隊伍成員跟隨要不要保留?不用的話我正好寫過類似的

什么意思?我的角色就主角和宠物两个
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
135
在线时间
450 小时
注册时间
2015-2-25
帖子
365
4
发表于 2015-3-31 09:19:00 | 只看该作者
本帖最后由 howhow1314 于 2015-3-31 12:11 编辑

RUBY 代码复制
  1. class Game_Followers
  2.   def initialize(leader)
  3.     @visible = $data_system.opt_followers
  4.     @gathering = false                    # 集合處理中的標志
  5.     @leader = leader
  6.     @data = []   
  7.     @mama = []
  8.   end
  9.   def yooo_very_fresh
  10.     $game_player.refresh
  11.     SceneManager.scene.spriteset.refresh_characters
  12.   end   
  13.   def jj(aid)   
  14.     @data == [] ? p = @leader : p = @data[-1]
  15.     @data.push(Game_Follower.new(aid, p))
  16.     @mama[aid] = [] unless @mama[aid]
  17.     @mama[aid].push(@data[-1])
  18.     msgbox @mama[aid].size
  19.     @data[-1].moveto($game_player.x, $game_player.y)
  20.     yooo_very_fresh
  21.   end
  22.   def cut_jj(aid)
  23.     @data.delete(@mama[aid][0])
  24.     @mama[aid][0] = nil
  25.     @mama[aid].compact!
  26.     @data.each_with_index do |baby, i|
  27.         i == 0 ? baby.preceding_character = @leader : baby.preceding_character = @data[i-1]
  28.     end
  29.     yooo_very_fresh
  30.   end
  31. end
  32.  
  33. class Game_Follower < Game_Character
  34.   attr_writer :preceding_character
  35.   def actor
  36.     $game_actors[@member_index]
  37.   end
  38. end
  39.  
  40.  
  41.  
  42. class Scene_Map < Scene_Base
  43.   attr_reader :spriteset
  44. end


RUBY 代码复制
  1. $game_player.followers.jj(角色id)          #加入尾隨角色
  2. $game_player.followers.cut_jj(角色id)    #移除尾隨角色 (多於一個相同編號角色時移除先加入的)


還有就是,隊伍成員會尾隨了~

点评

$game_player.refresh SceneManager.scene.spriteset.refresh_characters 這邊不知道有沒有更方便的方法  发表于 2015-3-31 09:20
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

5
发表于 2015-4-1 23:29:16 | 只看该作者
只有两个角色的话可以修改原来state显示相关的脚本,屏蔽掉宠物角色的ID,然后让宠物加入队伍开启队伍跟随,这样的话菜单里看不到宠物
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-15 21:34

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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