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

Project1

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

寻找会编写或提取真移位脚本的高手

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-8-10
帖子
243
跳转到指定楼层
1
发表于 2008-12-27 18:29:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
非常需要此脚本,请高手帮一下忙。谢谢{/ll}{/ll}{/ll}
此贴于 2008-12-28 11:18:33 被版主darkten提醒,请楼主看到后对本贴做出回应。
版务信息:本贴由楼主自主结贴~
哎!要完成这个游戏肯定要使用很多脚本和素材!我想把小樱的动画变成游戏!我相信这并不是不可能的事!

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
2
发表于 2008-12-27 20:07:11 | 只看该作者
真移位脚本不是极度简单的吗。。。。只要你的人物动画够位,基本这个东西简直就是骗小孩,如果整合彩虹神剑的话直接在那里写就可以了,就是刷新和变换战斗图的问题而已,如果有点难度应该是指在战斗场景类中要真移位的时候给个判断变量,当这个变量为某一确定值的时候开始随刷新变化战斗图和它的位置不就是所谓的真移位系统了吗?这个很简单而已,现在这个时代要搞个战斗系统,还不是简单过借火。。
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-8-10
帖子
243
3
 楼主| 发表于 2008-12-29 03:00:21 | 只看该作者
以下引用云之殇于2008-12-27 12:07:11的发言:

真移位脚本不是极度简单的吗。。。。只要你的人物动画够位,基本这个东西简直就是骗小孩,如果整合彩虹神剑的话直接在那里写就可以了,就是刷新和变换战斗图的问题而已,如果有点难度应该是指在战斗场景类中要真移位的时候给个判断变量,当这个变量为某一确定值的时候开始随刷新变化战斗图和它的位置不就是所谓的真移位系统了吗?这个很简单而已,现在这个时代要搞个战斗系统,还不是简单过借火。。


[本贴由作者于 2008-12-27 12:08:58 最后编辑]


呵呵!研究了很多次了都没办法实现
哎!要完成这个游戏肯定要使用很多脚本和素材!我想把小樱的动画变成游戏!我相信这并不是不可能的事!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
4
发表于 2008-12-29 06:33:59 | 只看该作者
这样子啊,好吧,我就给你个我写的真移位教程吧。。。。。{/cy}
太长,要等段时间才可以写完。。。等等
1,首先在彩虹神剑的下面搜查
  self.x = @battler.screen_x
  self.y = @battler.screen_y
这两句,如果你没有整合彩虹神剑,请把精灵的内部类就是RPG::Sprite这个复制到main前面,然后寻找他的update方法,其实彩虹神剑的下面就是这个update方法,所以有彩虹会简单点,然后根据他的意思我们知道战斗者精灵的坐标是根据战斗者@battler的screen_x来定位的,故此就要翻出Game_Actor和Game_Enemy类的def screen_x方法,下面知道他是这个样子写的。


  1.   #--------------------------------------------------------------------------
  2.   # ● 取得战斗画面的 X 坐标
  3.   #--------------------------------------------------------------------------
  4.   def screen_x
  5.     # 返回计算后的队伍 X 坐标的排列顺序
  6.     if self.index != nil
  7.       return self.index * 160 + 80
  8.     else
  9.       return 0
  10.     end
  11.   end
复制代码

然后如果你要加个变量比如return self.index * 160 + 80 +lhbadsl_x这个变量lhbadsl_x必须要在角色类前面声明,不然在其他地方无法引用,而加上了这个声明了的变量就可以在其他的类比如战斗场景scene_battler中引用修改。。。
2,真移位属于刷新定位的一种,所以要把精灵的update方法中的
  self.x = @battler.screen_x
  self.y = @battler.screen_y
这两句提出来直接放到update方法中就是不要用限制限制住它,默认是用脚本句子限制起来的,而我们就要让他在每次刷新的时候都定位一次。。。
3,这两步搞定后。。。在战斗场景scene_battler中。。。我们想要那个移动一下就在要他移动的时候,比如在人物成为焦点的时候向前面移动20像素,这样就是讲用@actor
.lhbadsl_x += 20就是讲让这个人物的lhbadsl_x变量的值加上20,人物就会在位置上移位了。移位前面我已经把精灵的刷新定位变成每桢都刷新定位一次。。。故此一定会成功,成功不了可能是人品问题。。。
4,同步变图,很明显,所谓的真移位只有移位是不够的,故此要变图,这个会写战斗系统的人都会吧,对你写出了一个战斗系统的人来讲,虽然我认为很不咋样,但是这个一定可以做到。。。就是在移位的时候一起变图。。
5,每步之间的等待,很明显真移位中的一步一步就是一次移位加上一次变图为一个基本的单位,然后很多个这种基本单位一个一个按顺序来就看起来很像“真正的移位”,可是刷新的时间很短,每桢只有1/20秒,如果没有等待的话,看起来人物就根本没有任何变化而是直接移位到目的地的,所以要在每个单元中间加入等待。。。。wait(20)之类的参数可以自己按照要求修改,等等函数是在战斗场景中定义一个。。。。代码如下:

  1.   #----------------------------------------------------
  2.   #等等函数。。。
  3.   #----------------------------------------------------
  4.   def wait(duration)
  5.      for i in 0...duration
  6.       update_basic
  7.       break if i >= duration
  8.     end
  9.   end
  10.   def update_basic(main = false)
  11.     Graphics.update unless main     # ゲーム画面を更新
  12.     Input.update unless main        # 入力情報を更新
  13.     $game_system.update             # タイマーを更新
  14.     @spriteset.update
  15.   end
复制代码

版主对此帖的认可:『赞认真和耐心的教程!』,积分『+150』。
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

菜鸟飞呀飞 该用户已被删除
5
发表于 2008-12-29 06:35:30 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

lov Peii 4ever

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-10-28
帖子
423
6
发表于 2008-12-29 07:26:43 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

镖师十四

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-10-17
帖子
128
7
发表于 2008-12-29 08:39:24 | 只看该作者
6,目的地的定位,这个是一个对有要求的战斗系统的一个非常重要的东西,如果你的移位不能到达你想要的目的地的话,那么这个真移位系统就一点作用也没有,这个移位的目的地要看你的要求了,有以固定目的地的游戏,比如我的历史2是固定的目的地这个好办,但是我看你的游戏绝对不是这种简单的东西,所以你要的是走到你攻击的敌人之前的某一个地方的真移位系统,那么这个很明显要一种“定位”,这个定位一般是用敌人的坐标就是上面所讲的screen_x来定位的,就是你的脚本要可以判断出所攻击的目标,而且可以认出他的screen_x(虽然目标是刷新定位的可是攻击的时候是“固定”的)所以认出他的位置然后就让这个位置和你的攻击者的位置对上,x和y方向的差距是固定的,然后就让他按照一定的步数,比如是五步到达,那么就让脚本自动的变图和移位吧,最终就是到达了你要的那个位置,然后攻击动画开始。。。这个就是真移位系统的本质了
欢迎光临法宝网---历史的天空2专版 http://www.fabfan.net/bbs/forum-85-1.html
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

lov Peii 4ever

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-10-28
帖子
423
8
发表于 2008-12-29 10:14:54 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-8-10
帖子
243
9
 楼主| 发表于 2008-12-31 17:51:45 | 只看该作者
好!我试试看!准备弄个横板的真移位
哎!要完成这个游戏肯定要使用很多脚本和素材!我想把小樱的动画变成游戏!我相信这并不是不可能的事!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-20 04:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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