Project1
标题:
鼠标点击敌人自动攻击
[打印本页]
作者:
霜月寒冬
时间:
2015-5-1 16:27
标题:
鼠标点击敌人自动攻击
这个一直是我解不开的迷,之前写过但是失败了,所以特来此向各位大神请教
作者:
芯☆淡茹水
时间:
2015-5-1 19:56
本帖最后由 芯☆淡茹水 于 2015-5-1 20:26 编辑
一个大体的思路:
##以一般的鼠标脚本为例:
#定义一个获取鼠标指向的敌人的方法。
def get_enemy
#获取当前鼠标指向的坐标。
x, y = Mouse.get_mouse_pos
#循环敌人队伍。
for enemy in $game_troop.enemies
#跳过不存在的敌人。
next unless enemy.exist?
#获取敌人战斗位图。
bitmap = RPG::Cache.battler(enemy.battler_name, enemy.battler_hue)
#判断鼠标是否在敌人的战斗图片内。
width = bitmap.width / 2
height = bitmap.height
if x > enemy.screen_x - width and x < enemy.screen_x + width and
y > enemy.screen_y - height and y < enemy.screen_y
#判断当前鼠标指向的图片点是否透明。
b_x = x - enemy.screen_x + width
b_y = y - enemy.screen_y + height
#如果指向的图片点不透明,返回该 enemy 。
if bitmap.get_pixel(b_x, b_y).alpha > 0
return enemy
end
end
end
# 返回 nil 。
return nil
end
复制代码
在战斗中选择行动时,点击鼠标左键时,就这样判断是否指向敌人。
如果不是 nil ,那么该角色的行动是普通攻击,攻击对象就是上面获取的 enemy 。
作者:
霜月寒冬
时间:
2015-5-3 12:22
这个应该放在那里
作者:
芯☆淡茹水
时间:
2015-5-3 13:21
这个只是一个获取敌人的思路,具体做的时候可以放 战斗场景 里,也可以放鼠标脚本里,那就看你自己的意愿。
当然放的地方不同,写法也不一样。
作者:
霜月寒冬
时间:
2015-6-3 13:40
那如何制作全动画点击敌人呢?给个范例?
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1