Project1
标题:
关于点击战斗后自动对应攻击的问题
[打印本页]
作者:
负零
时间:
2015-1-9 15:12
标题:
关于点击战斗后自动对应攻击的问题
class Scene_Battle < Scene_Base中
#--------------------------------------------------------------------------
# ● 指令“攻击”
#--------------------------------------------------------------------------
def command_attack
BattleManager.actor.input.set_attack
p @game_party.battle_members[0].atk
end
红字部分不能正确获取到指定信息。所以无法实现以下功能
求教如何实现点击“攻击”(第一级菜单)后,战斗队伍中位置1(game_party)的角色攻击敌人队伍位置1的怪物(game.troop)这一代码。
作者:
三途亚梦
时间:
2015-1-9 15:28
本帖最后由 三途亚梦 于 2015-1-9 15:30 编辑
@是个什么鬼啊…… 用$啊……
morningboo
↑关于如何对应自动战斗的目标选择,我建议你看看这个少年发的提问帖。
作者:
morningboo
时间:
2015-1-10 11:11
首先VA中其实并不存在位置的概念,我的游戏因为是全自动战斗所以最后通过大幅改造这个脚本实现了效果要求,你的如果还有战斗指令选择界面的话建议用XD大大的扩展目标范围脚本
#=================================================
# ■ 技能组别范围
#
=begin
脚本名:技能组别范围
作者:九夜神尊
使用方法:设置技能的作用范围为四个随机敌人,即定义为组别技能
这个技能攻击队伍中同一种敌人,原有的4随机敌人定义被取消。
可能的冲突:新的战斗系统吧
版本 :1.0
=end
class RPG::UsableItem < RPG::BaseItem
#------------------------------------------------
# ●需要选择
#------------------------------------------------
def need_selection?
[1, 6,7, 9].include?(@scope)
end
#------------------------------------------------
# ●随机对象
#------------------------------------------------
def for_random?
[3, 4, 5].include?(@scope)
end
#------------------------------------------------
# ●组别对象
#------------------------------------------------
def for_group?
@scope==6
end
end
#encoding:utf-8
#==============================================================================
# ■ Game_Action
#------------------------------------------------------------------------------
# 处理战斗中的行动的类。本类在 Game_Battler 类的内部使用。
#==============================================================================
class Game_Action
#--------------------------------------------------------------------------
# ● 目标为敌人
#--------------------------------------------------------------------------
alias swtf_targets_for_opponents targets_for_opponents
def targets_for_opponents
if item.for_group?
return opponents_unit.group_target(@target_index)
end
swtf_targets_for_opponents
end
end
#encoding:utf-8
#==============================================================================
# ■ Game_Unit
#------------------------------------------------------------------------------
# 管理游戏单位的类。是 Game_Party 和 Game_Troop 类的父类。
#==============================================================================
class Game_Unit
#--------------------------------------------------------------------------
# ● 决定组别目标
#
#--------------------------------------------------------------------------
def group_target(index)
group = []
member = members[index]
members.each do |enemy|
if enemy.enemy_id == member.enemy_id
group.push enemy if enemy.alive?
end
end
return group
end
end
复制代码
PS:XD大新出了一个扩展技能和道具范围的脚本,这里推荐使用下,我的因为已经时间很久了,懒得再去一一设置了就将就用了(2000多个技能),你可以用这个脚本来直接指定攻击目标,比我上面的方法好的多,下面提供传送门:
https://rpg.blue/thread-374477-1-1.html
注意需要置顶的基础设置
作者:
taroxd
时间:
2015-1-10 11:41
本帖最后由 taroxd 于 2015-1-10 11:43 编辑
https://rpg.blue/thread-365973-1-1.html
https://rpg.blue/thread-374477-1-1.html
https://rpg.blue/thread-375289-1-1.html
三个加起来可以完全实现你的功能
其中目标可以用 <target>first</target> 来实现打敌方第一个人
**注意群组里面置顶的公告**
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1