查看: 2408|回复: 2

[已经解决] 在战斗中如何使用事件页让敌人坐标移动?

[复制链接]
梦石
0
星屑
208
在线时间
420 小时
注册时间
2020-1-11
回帖
175
发表于 2022-3-27 23:22:24 | 显示全部楼层 |阅读模式
悬赏150星屑已解决
比如说,想在战斗行动开始前,让敌人图像绕著画面跑个一圈。想利用敌群的事件页实现。敌人@battler.screen_x 改变怎么用脚本实现?求帮助。

最佳答案

查看完整内容

晒一下网上抠到的代码, 仅供参考, 意非答题
梦石
0
星屑
29901
在线时间
5734 小时
注册时间
2016-3-8
回帖
1653
发表于 2022-3-27 23:22:25 | 显示全部楼层
本帖最后由 alexncf125 于 2022-3-28 00:42 编辑

晒一下网上抠到的代码, 仅供参考, 意非答题
点击展开/收起[pre lang="ruby"]class Sprite_Battler < Sprite_Base

  MINANG, MAXANG = 1, 51
  
  alias spiral_initialize initialize
  def initialize(viewport, battler = nil)
    spiral_initialize(viewport, battler)
    @curr_mark = 0
    @range = gen_range
  end
   
  def gen_range(max = MAXANG)
    range = []
    MINANG.upto(MAXANG) do |i|
      split = i.to_f/0.6
      inv = split ** -1
      1.upto(split){|j| range.push(inv.to_f*j+i)}
    end
    range
  end

  alias test_update update
  def update
    test_update
    draw_next_dot if self.visible
    restart_spiral if @curr_mark >= @range.size
  end

  def draw_next_dot
    v = @range[@curr_mark]
    x = (v**1.414)*Math.cos(v) + Graphics.width/2
    y = (v**1.414)*Math.sin(v) + Graphics.height/2
    self.x = x
    self.y = y
    @curr_mark += 1
  end

  def restart_spiral
    @curr_mark = 0
  end
end[/pre]

1648398085031.gif
回复

使用道具 举报

梦石
0
星屑
208
在线时间
420 小时
注册时间
2020-1-11
回帖
175
 楼主| 发表于 2022-3-28 07:30:40 | 显示全部楼层
alexncf125 发表于 2022-3-28 00:32
晒一下网上抠到的代码, 仅供参考, 意非答题
[fold]class Sprite_Battler < Sprite_Base

我知道怎么做了,太感谢了。
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部