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

Project1

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

[已经解决] 如何从通过一个Enemy对象获取其对应的战斗图sprite?

[复制链接]

Lv1.梦旅人

梦石
0
星屑
55
在线时间
388 小时
注册时间
2009-8-4
帖子
219
跳转到指定楼层
1
发表于 2016-3-15 22:36:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
晚上写代码突然脑子不够用了...谁来给个提示

Lv1.梦旅人

梦石
0
星屑
70
在线时间
386 小时
注册时间
2007-7-27
帖子
4106

开拓者

2
发表于 2016-3-16 00:47:20 | 只看该作者
这块没看过,但是从Character到行走图的sprite之间完全没有联系,所以我猜这个也一样……

点评

用了spriteset遍历来找了。。。真奇怪,直觉上通过角色来找sprite应该不少见啊。。。  发表于 2016-3-16 18:18
吸吸
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2208
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

3
发表于 2016-3-16 06:48:45 | 只看该作者
你的“获取”是什么意思?

如果是指新建一个 Sprite 的话,可以用 enemy.battlerName(), enemy.battlerHue() 获取相关属性,然后新建一个

如果是指拿到一个已经生成的 Sprite 的话……基本上说明你写脚本的思路有问题。Enemy 这东西负责的是数据逻辑,Sprite 负责的是显示,不应该有从 Enemy 获取 Sprite 的想法。
默认脚本也没有提供获取 Sprite_Enemy 所对应 enemy 的公开方法。
如果实在要获取的话:
JAVASCRIPT 代码复制
  1. // with (an instance of Spriteset_Battle) {
  2.     this._enemySprites.find(function (s) {
  3.         return s._enemy === yourEnemy;
  4.     });
  5. // }
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
55
在线时间
388 小时
注册时间
2009-8-4
帖子
219
4
 楼主| 发表于 2016-3-16 18:15:29 | 只看该作者
taroxd 发表于 2016-3-16 06:48
你的“获取”是什么意思?

如果是指新建一个 Sprite 的话,可以用 enemy.battlerName(), enemy.battlerHue ...

感谢前辈,可是使用find()方法会报undefined is not a function,是不是这个版本没这个方法?
我现在是用遍历来找对应的sprite了。

我也觉得从enemy找sprite很别扭,但是目前写的东西是想在播放战斗动画的时候根据敌人的sprite高度计算一个偏移量,showNormalAnimation()只能传出target对象,所以我写的方法只能传入target了ORZ
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
70
在线时间
386 小时
注册时间
2007-7-27
帖子
4106

开拓者

5
发表于 2016-3-16 18:52:49 手机端发表。 | 只看该作者
fuki对话框也有这个问题,对话框本身不在spriteset里面,但是对话框的偏移要用到行走图的高度。
之前有思路是在spriteset里面成功加载到bitmap的时候把高度写回去,不过趴在地上想想好麻烦还是算了
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-12-24 03:20

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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