查看: 1842|回复: 2

[已经解决] 怎么用角色ID来判断战斗时的坐标

[复制链接]
梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
回帖
317
发表于 2013-8-15 17:38:13 | 显示全部楼层 |阅读模式

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

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

×

战斗中角色为5人。  我想这个坐标应该好写,让我纠结的是。  关于召唤兽的问题



例如:ID<20   的角色。战斗时候的坐标在角色前面。估计玩过网游的都知道。。。。。。{:2_261:}  
梦石
0
星屑
3703
在线时间
3081 小时
注册时间
2011-11-17
回帖
943
发表于 2013-8-15 18:11:13 | 显示全部楼层
思路是将角色 和宠物分别 存在不同的数组里 然后循环索引
  1. class Game_Actor < Game_Battler

  2.   def pusharray
  3.       for i in $game_party.actors
  4.        if i.id<=50
  5.        @bactor.push i.id
  6.        else
  7.        @bpet.push i.id
  8.        end
  9.      end
  10.     end
  11.   #--------------------------------------------------------------------------
  12.   # ● 取得战斗画面的 X 坐标
  13.   #--------------------------------------------------------------------------
  14.   def screen_x
  15.      
  16.      pusharray
  17.     if @bactor.include?(self.id)
  18.       for i in 0..@bactor.size########角色的坐标算法
  19.         if @bactor[i]==self.id
  20.           return i*50+680
  21.       end
  22.       end
  23.     else
  24.       for i in 0..@bpet.size########宠物的坐标算法
  25.       if @bpet[i]==self.id
  26.            return i*50+620
  27.       end
  28.       end
  29.     end


  30.   end

  31.   
  32.   
  33.     #--------------------------------------------------------------------------
  34.   # ● 取得战斗画面的 Y 坐标
  35.   #--------------------------------------------------------------------------
  36.   def screen_y
  37.     if @bactor.include?(self.id)
  38.       for i in 0..@bactor.size
  39.         if @bactor[i]==self.id
  40.           return 470-i*35
  41.       end
  42.       end
  43.     else
  44.       for i in 0..@bpet.size
  45.       if @bpet[i]==self.id
  46.             return 450-i*35
  47.       end
  48.       end
  49.       end
  50.   end

  51.   
  52.   #--------------------------------------------------------------------------
  53.   # ● 取得战斗画面的 Z 坐标
  54.   #--------------------------------------------------------------------------
  55.   def screen_z
  56.     return 100 - self.index
  57.     end
  58. end
复制代码

点评

gameactor的 setup里加上 @bactor=[] @bpet=[]  发表于 2013-8-15 18:12

评分

参与人数 1星屑 +84 收起 理由
弗雷德 + 84 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
1556
在线时间
626 小时
注册时间
2010-8-5
回帖
317
 楼主| 发表于 2013-8-16 09:06:51 | 显示全部楼层
谢谢楼上{:2_287:}
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部