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

Project1

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

如何……随机跳跃

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-6-28
帖子
86
跳转到指定楼层
1
发表于 2009-1-6 07:41:23 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
主角按决定键后,让这个事件随机跳跃到一个位置,也就是 X坐标+随机数 Y坐标+随机数,这个随机数还要有一个范围……那么我应该如何操作?
版务信息:本贴由楼主自主结贴~

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-6-28
帖子
86
5
 楼主| 发表于 2009-1-14 07:16:08 | 只看该作者
看不懂
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1323
在线时间
831 小时
注册时间
2007-12-25
帖子
1558
4
发表于 2009-1-7 07:08:17 | 只看该作者
看说明咯
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-6-28
帖子
86
3
 楼主| 发表于 2009-1-7 07:06:15 | 只看该作者
这个具体来说应该如何用呢?
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1323
在线时间
831 小时
注册时间
2007-12-25
帖子
1558
2
发表于 2009-1-6 08:01:26 | 只看该作者
为你写了个定做
不认可对不起我

  1. #==================================================================
  2. #使跳跃支持变量操作
  3. #
  4. #使用方法,约定如下
  5. # 当x坐标设定为99时,跳跃步数为 变量甲
  6. # 当y坐标设定为99时,跳跃步数为 变量乙
  7. #  变量甲 乙,在脚本中设定,在跳跃之前
  8. # 先处理这两个变量,然后跳跃步数填为99级可
  9. #====================================================================
  10. class Game_Character
  11.   #--------------------------------------------------------------------------
  12.   # ● 跳跃
  13.   #     x_plus : X 坐标增加值
  14.   #     y_plus : Y 坐标增加值
  15.   #--------------------------------------------------------------------------
  16.   def jump(x_plus, y_plus)
  17.     # 增加值不是 (0,0) 的情况下
  18.     @swtf_x = 1                            #当填写99时,x使用变量ID
  19.     @swtf_y = 2                            #当填写99时,y使用变量ID
  20.    x_plus = $game_variables[@swtf_x] if x_plus = 99
  21.    y_plus = $game_variables[@swtf_y] if x_plus = 99
  22.     if x_plus != 0 or y_plus != 0
  23.       # 横侧距离长的情况下
  24.       if x_plus.abs > y_plus.abs
  25.         # 变更左右方向
  26.         x_plus < 0 ? turn_left : turn_right
  27.       # 竖侧距离长的情况下
  28.       else
  29.         # 变更上下方向
  30.         y_plus < 0 ? turn_up : turn_down
  31.       end
  32.     end
  33.     # 计算新的坐标
  34.     new_x = @x + x_plus
  35.     new_y = @y + y_plus
  36.     # 增加值为 (0,0) 的情况下、跳跃目标可以通行的场合
  37.     if (x_plus == 0 and y_plus == 0) or passable?(new_x, new_y, 0)
  38.       # 矫正姿势
  39.       straighten
  40.       # 更新坐标
  41.       @x = new_x
  42.       @y = new_y
  43.       # 距计算距离
  44.       distance = Math.sqrt(x_plus * x_plus + y_plus * y_plus).round
  45.       # 设置跳跃记数
  46.       @jump_peak = 10 + distance - @move_speed
  47.       @jump_count = @jump_peak * 2
  48.       # 清除停止记数信息
  49.       @stop_count = 0
  50.     end
  51.   end
  52. end  
复制代码


不会用联系我
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
精卫赤龙腾   
总是存在一种强大,去完成似乎不可能的事情.
无畏战乾程   
或是需要一种勇气,去挑战几乎不存在的胜利.
一味玄真魂     
这是拥有一种恒心,去化解根本没有解的困难.
烈卫开天径    
只是带着一种决心,去争取残存的最后的希望。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-19 16:19

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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