查看: 2598|回复: 19

[已经过期] 请教四个问题(可能比较难说明)

[复制链接]
梦石
0
星屑
1345
在线时间
378 小时
注册时间
2015-6-16
回帖
526
发表于 2017-7-27 20:23:10 | 显示全部楼层 |阅读模式

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

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

×
1.如果使得技能平分造成5段伤害(伤害公式那边)显示不同的动画?(用的yanfly大佬的战斗系统,肉包大大教了我改变动画,却无法实现一段伤害一段动画)<目前是放完水火土风电的动画,然后造成五段属性伤害,并不是一段属性伤害一段动画>
2.事件那边变量=地图ID(用脚本怎么说明<我用了变量= map.id目测不对报错了>)‘
3.图书馆的随机礼物怎么多弄个图标显示:变成这样的效果:获得: 物品的名称 物品对应的图标 如果恢复剂就是 获得恢复剂 恢复剂的图标
4.yanfly大佬的CD系统,怎么调用某个角色某个技能的CD情况。还有怎么重置CD(重置为1回合2回合3回合,目前本人只会减少CD)
各位大佬拜托解答,虽然问题比较多,但总比我一个个帖子发好。
P1不太上了,有问题加个Q1286124843,不管是脚本还是游戏问题都可以来找我
梦石
0
星屑
7230
在线时间
1685 小时
注册时间
2017-4-28
回帖
84

开拓者

发表于 2017-7-27 20:34:14 | 显示全部楼层
2.
  1. $game_map.map_id
复制代码
回复

使用道具 举报

梦石
0
星屑
2306
在线时间
1010 小时
注册时间
2012-4-30
回帖
1455

开拓者

发表于 2017-7-31 08:56:06 | 显示全部楼层
3.图书馆的随机礼物怎么多弄个图标显示:变成这样的效果:获得: 物品的名称 物品对应的图标 如果恢复剂就是 获得恢复剂 恢复剂的图标

找到draw_text(x, y, width, line_height, item.name)之类的方法在后面添加draw_icon(item.icon_index, x, y)

BTW一贴多问的尴尬在于一贴我回答怎么多问题被认可答案只能在1好人卡的基础上酌情加点。
而要是你怎么多问题都分开问。既提升了论坛的活跃度{:2_275:}。还能让有能力帮你的人多拿点奖励,何乐不为{:2_257:}

点评

问题是发的再多,没人回答。这就懒得连发了,有一次提了比较简单的问题,连着的发好几个,一个都没人。然后我就废弃——采用1帖制度  发表于 2017-7-31 14:53
只要你不是发广告你把va区的第一页刷满也没人管  发表于 2017-7-31 14:02
本人担心连贴,连发帖(特别是这两项),你们会觉得刷!然后我分没了,要问一起问好了  发表于 2017-7-31 10:39
回复

使用道具 举报

梦石
0
星屑
50
在线时间
26 小时
注册时间
2017-3-5
回帖
26

开拓者

发表于 2017-8-6 15:41:18 | 显示全部楼层
问题1可以使用连击脚本吗?也就是水火风雷土分别是一个技能然后利用连击脚本组合在一起。[pre lang="ruby"]#==============================================================================
#
# ▼ Yanfly Engine Ace - Active Chain Skills v1.01
# -- Last Updated: 2011.12.22
# -- Level: Hard
# -- Requires: n/a
#
#==============================================================================

$imported = {} if $imported.nil?
$imported["YEA-ActiveChainSkills"] = true

#==============================================================================
# ▼ Updates
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 2011.12.22 - Better updating speed for window.
# 2011.12.18 - Started Script and Finished.
#
#==============================================================================
# ▼ Introduction
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# 這腳本實現了主動連技的可能性,當帶有連技屬性的技能發動時,畫面左下方會出現
# 可以連甚麼技的訊息列表,透過簡單QTE,能立刻發動下一招連技。理論上,只要有足夠
# 的資源(MP, TP) 和連技屬性的設定,是可以無限連技的。
#==============================================================================
# ▼ Instructions
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# To install this script, open up your script editor and copy/paste this script
# to an open slot below ▼ Materials/素材 but above ▼ Main. Remember to save.
#
# -----------------------------------------------------------------------------
# 以下是要放進[技能][註]的東東
# -----------------------------------------------------------------------------
# <chain skill L: x>
# <chain skill R: x>
# <chain skill X: x>
# <chain skill Y: x>
# <chain skill Z: x>
# 這個是給予可連技屬性的東東,X 是技能的編號, 013,102 之類的。放了進去就是代表
# 此技能能連去編號XXX 的技能。當沒有設定時,如只設定了Skill X,Y,Z ,L和R 是不
# 會在連技訊息列表中出現。而不夠資源如MP,TP 時,連技訊息列表中該技能就會黑掉。
# <chain only>
# 這個東東是令該技能在正常技能表中不能選擇,只能透過連技去發動。
#==============================================================================
# ▼ Compatibility
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# This script is made strictly for RPG Maker VX Ace. It is highly unlikely that
# it will run with RPG Maker VX without adjusting.
#
# While this script doesn't interfere with Input Combo Skills, it will most
# likely be unable to used in conjunction with Input Combo Skills. I will not
# provide support for any errors that may occur from this, nor will I be
# responsible for any damage doing this may cause your game.
#
#==============================================================================

module YEA
  module ACTIVE_CHAIN

    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # - Chain Skill Settings -
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # Adjust general settings here. These settings adjust the sound effect
    # played when an active skill is selected and what the minimum time window
    # is for an active chain skill.
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # 下面是連技成功時的音效,可改。
    ACTIVE_SKILL_SOUND = RPG::SE.new("Desision2", 80, 100)

    # 下面是設定連技訊息列表出現的時間長度,也就是QTE 的限時。
    MINIMUM_TIME = 180

    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # - Chain Skill Text -
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    # 這裡是設定連技訊息列表內容的地方,除了Title 外,都可用text codes.
    #=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
    CHAIN_TITLE  = "追打技 "
    TITLE_SIZE   = 25
    L_SKILL_ON   = "\eC[17]击退\eC[0]: "
    L_SKILL_OFF  = "\eC[7]击退: "
    L_SKILL_ACT  = "\eC[17]击退: "
    R_SKILL_ON   = "\eC[17]倒地\eC[0]: "
    R_SKILL_OFF  = "\eC[7]倒地: "
    R_SKILL_ACT  = "\eC[17]倒地: "
    X_SKILL_ON   = "\eC[17]浮空\eC[0]: "
    X_SKILL_OFF  = "\eC[7]浮空: "
    X_SKILL_ACT  = "\eC[17]浮空: "
    Y_SKILL_ON   = "\eC[17]恢复\eC[0]: "
    Y_SKILL_OFF  = "\eC[7]恢复: "
    Y_SKILL_ACT  = "\eC[17]恢复: "
    Z_SKILL_ON   = "\eC[17]辅助\eC[0]: "
    Z_SKILL_OFF  = "\eC[7]辅助: "
    Z_SKILL_ACT  = "\eC[17]辅助: "

  end # ACTIVE_CHAIN
end # YEA

#==============================================================================
# ▼ Editting anything past this point may potentially result in causing
# computer damage, incontinence, explosion of user's head, coma, death, and/or
# halitosis so edit at your own risk.
#==============================================================================

module YEA
  module REGEXP
  module SKILL

    CHAIN_ONLY  = /<(?:CHAIN_ONLY|chain only)>/i
    CHAIN_SKILL = /<(?:CHAIN_SKILL|chain skill)[ ]([LRXYZ]):[ ](\d+)>/i

  end # SKILL
  end # REGEXP
end # YEA

#==============================================================================
# ■ DataManager
#==============================================================================

module DataManager

  #--------------------------------------------------------------------------
  # alias method: load_database
  #--------------------------------------------------------------------------
  class <<self; alias load_database_acs load_database; end
  def self.load_database
    load_database_acs
    load_notetags_acs
  end

  #--------------------------------------------------------------------------
  # new method: load_notetags_acs
  #--------------------------------------------------------------------------
  def self.load_notetags_acs
    for skill in $data_skills
      next if skill.nil?
      skill.load_notetags_acs
    end
  end

end # DataManager

#==============================================================================
# ■ RPG::Skill
#==============================================================================

class RPG::Skill < RPG::UsableItem

  #--------------------------------------------------------------------------
  # public instance variables
  #--------------------------------------------------------------------------
  attr_accessor :chain_only
  attr_accessor :chain_skill

  #--------------------------------------------------------------------------
  # common cache: load_notetags_acs
  #--------------------------------------------------------------------------
  def load_notetags_acs
    @chain_only = false
    @chain_skill = {}
    #---
    self.note.split(/[\r\n]+/).each { |line|
      case line
      #---
      when YEA::REGEXP::SKILL::CHAIN_ONLY
        @chain_only = true
      when YEA::REGEXP::SKILL::CHAIN_SKILL
        case $1.upcase
        when "L"; @chain_skill[:L] = $2.to_i
        when "R"; @chain_skill[:R] = $2.to_i
        when "X"; @chain_skill[:X] = $2.to_i
        when "Y"; @chain_skill[:Y] = $2.to_i
        when "Z"; @chain_skill[:Z] = $2.to_i
        else; next
        end
      #---
      end
    } # self.note.split
    #---
  end

end # RPG::UsableItem

#==============================================================================
# ■ Game_Action
#==============================================================================

class Game_Action

  #--------------------------------------------------------------------------
  # new method: set_active_chain_skill
  #--------------------------------------------------------------------------
  def set_active_chain_skill(skill_id)
    set_skill(skill_id)
    @target_index = subject.current_action.target_index
    @active_chain_skill = true
  end

  #--------------------------------------------------------------------------
  # alias method: valid?
  #--------------------------------------------------------------------------
  alias game_action_valid_acs valid?
  def valid?
    subject.enable_active_chain(true) if @active_chain_skill
    result = game_action_valid_acs
    subject.enable_active_chain(false) if @active_chain_skill
    return result
  end

end # Game_Action

#==============================================================================
# ■ Game_BattlerBase
#==============================================================================

class Game_BattlerBase

  #--------------------------------------------------------------------------
  # alias method: skill_conditions_met?
  #--------------------------------------------------------------------------
  alias game_battlerbase_skill_conditions_met_acs skill_conditions_met?
  def skill_conditions_met?(skill)
    return false if chain_skill_restriction?(skill)
    return game_battlerbase_skill_conditions_met_acs(skill)
  end

  #--------------------------------------------------------------------------
  # new method: chain_skill_restriction?
  #--------------------------------------------------------------------------
  def chain_skill_restriction?(skill)
    return false unless actor?
    return false unless $game_party.in_battle
    return false unless skill.chain_only
    return !@active_chain_enabled
  end

  #--------------------------------------------------------------------------
  # alias method: hp=
  #--------------------------------------------------------------------------
  alias game_battlerbase_hpequals_acs hp=
  def hp=(value)
    game_battlerbase_hpequals_acs(value)
    return unless SceneManager.scene_is?(Scene_Battle)
    return unless actor?
    return if value == 0
    SceneManager.scene.refresh_active_chain_skill_window(self)
  end

  #--------------------------------------------------------------------------
  # alias method: mp=
  #--------------------------------------------------------------------------
  alias game_battlerbase_mpequals_acs mp=
  def mp=(value)
    game_battlerbase_mpequals_acs(value)
    return unless SceneManager.scene_is?(Scene_Battle)
    return unless actor?
    return if value == 0
    SceneManager.scene.refresh_active_chain_skill_window(self)
  end

  #--------------------------------------------------------------------------
  # alias method: tp=
  #--------------------------------------------------------------------------
  alias game_battlerbase_tpequals_acs tp=
  def tp=(value)
    game_battlerbase_tpequals_acs(value)
    return unless SceneManager.scene_is?(Scene_Battle)
    return unless actor?
    return if value == 0
    SceneManager.scene.refresh_active_chain_skill_window(self)
  end

end # Game_BattlerBase

#==============================================================================
# ■ Game_Battler
#==============================================================================

class Game_Battler < Game_BattlerBase

  #--------------------------------------------------------------------------
  # alias method: on_battle_start
  #--------------------------------------------------------------------------
  alias game_battler_on_battle_start_acs on_battle_start
  def on_battle_start
    game_battler_on_battle_start_acs
    @active_chain_enabled = false
  end

  #--------------------------------------------------------------------------
  # alias method: on_battle_end
  #--------------------------------------------------------------------------
  alias game_battler_on_battle_end_acs on_battle_end
  def on_battle_end
    game_battler_on_battle_end_acs
    @active_chain_enabled = false
  end

  #--------------------------------------------------------------------------
  # new method: enable_active_chain
  #--------------------------------------------------------------------------
  def enable_active_chain(active)
    return unless actor?
    @active_chain_enabled = active
  end

  #--------------------------------------------------------------------------
  # new method: add_active_skill_chain
  #--------------------------------------------------------------------------
  def add_active_skill_chain(skill_id)
    chain_skill = Game_Action.new(self)
    chain_skill.set_active_chain_skill(skill_id)
    @actions.insert(1, chain_skill)
  end

end # Game_Battler

#==============================================================================
# ■ Window_ChainSkillList
#==============================================================================

class Window_ChainSkillList < Window_Base

  #--------------------------------------------------------------------------
  # initialize
  #--------------------------------------------------------------------------
  def initialize
    dw = [Graphics.width/2, 320].max
    super(-standard_padding, 0, dw, fitting_height(6))
    self.z = 200
    self.opacity = 0
    hide
  end

  #--------------------------------------------------------------------------
  # reveal
  #--------------------------------------------------------------------------
  def reveal(battler, skill)
    @battler = battler
    @skill = skill
    @chain_skills = []
    for key in skill.chain_skill
      next if key[1].nil?
      next if $data_skills[key[1]].nil?
      next unless @battler.skills.include?($data_skills[key[1]])
      @chain_skills.push($data_skills[key[1]])
    end
    return if @chain_skills == []
    self.y = Graphics.height - fitting_height(4)
    self.y -= fitting_height(@chain_skills.size + 1)
    show
    activate
    @enabled = true
    refresh
  end

  #--------------------------------------------------------------------------
  # button=
  #--------------------------------------------------------------------------
  def button=(button)
    @Button = button
    @enabled = false
    refresh unless @button.nil?
  end

  #--------------------------------------------------------------------------
  # refresh_check
  #--------------------------------------------------------------------------
  def refresh_check(battler)
    return if @battler != battler
    refresh
  end

  #--------------------------------------------------------------------------
  # refresh
  #--------------------------------------------------------------------------
  def refresh
    @button = nil if @enabled
    contents.clear
    draw_background_colour
    draw_horz_line(0)
    draw_combo_title
    draw_chain_skills
  end

  #--------------------------------------------------------------------------
  # draw_background_colour
  #--------------------------------------------------------------------------
  def draw_background_colour
    dh = line_height * (@chain_skills.size + 1)
    rect = Rect.new(0, 0, contents.width, dh)
    back_colour1 = Color.new(0, 0, 0, 192)
    back_colour2 = Color.new(0, 0, 0, 0)
    contents.gradient_fill_rect(rect, back_colour1, back_colour2)
  end

  #--------------------------------------------------------------------------
  # draw_horz_line
  #--------------------------------------------------------------------------
  def draw_horz_line(dy)
    line_y = dy + line_height - 2
    line_colour = normal_color
    line_colour.alpha = 48
    contents.fill_rect(0, line_y, contents.width, 2, line_colour)
  end

  #--------------------------------------------------------------------------
  # draw_combo_title
  #--------------------------------------------------------------------------
  def draw_combo_title
    reset_font_settings
    text = YEA::ACTIVE_CHAIN::CHAIN_TITLE
    contents.font.size = YEA::ACTIVE_CHAIN::TITLE_SIZE
    contents.font.bold = true
    contents.font.italic = true
    draw_text(12, 0, contents.width - 12, line_height, text)
    reset_font_settings
  end

  #--------------------------------------------------------------------------
  # draw_chain_skills
  #--------------------------------------------------------------------------
  def draw_chain_skills
    button_array = [:L, :R, :X, :Y, :Z]
    dx = 24
    dy = line_height
    for button in button_array
      next if @skill.chain_skill[button].nil?
      chain_skill = $data_skills[@skill.chain_skill[button]]
      next unless @battler.skills.include?(chain_skill)
      text = text_setting(button, chain_skill)
      text += sprintf("\eI[%d]", chain_skill.icon_index)
      text += chain_skill.name
      draw_text_ex(dx, dy, text)
      dy += line_height
    end
  end

  #--------------------------------------------------------------------------
  # text_setting
  #--------------------------------------------------------------------------
  def text_setting(button, skill)
    active = button == @button
    text = ""
    case button
    when :L
      if @enabled && @battler.usable?(skill)
        text = YEA::ACTIVE_CHAIN::L_SKILL_ON
      elsif !@enabled && active
        text = YEA::ACTIVE_CHAIN::L_SKILL_ACT
      else
        text = YEA::ACTIVE_CHAIN::L_SKILL_OFF
      end
    when :R
      if @enabled && @battler.usable?(skill)
        text = YEA::ACTIVE_CHAIN::R_SKILL_ON
      elsif !@enabled && active
        text = YEA::ACTIVE_CHAIN::R_SKILL_ACT
      else
        text = YEA::ACTIVE_CHAIN::R_SKILL_OFF
      end
    when :X
      if @enabled && @battler.usable?(skill)
        text = YEA::ACTIVE_CHAIN::X_SKILL_ON
      elsif !@enabled && active
        text = YEA::ACTIVE_CHAIN::X_SKILL_ACT
      else
        text = YEA::ACTIVE_CHAIN::X_SKILL_OFF
      end
    when :Y
      if @enabled && @battler.usable?(skill)
        text = YEA::ACTIVE_CHAIN::Y_SKILL_ON
      elsif !@enabled && active
        text = YEA::ACTIVE_CHAIN::Y_SKILL_ACT
      else
        text = YEA::ACTIVE_CHAIN::Y_SKILL_OFF
      end
    when :Z
      if @enabled && @battler.usable?(skill)
        text = YEA::ACTIVE_CHAIN::Z_SKILL_ON
      elsif !@enabled && active
        text = YEA::ACTIVE_CHAIN::Z_SKILL_ACT
      else
        text = YEA::ACTIVE_CHAIN::Z_SKILL_OFF
      end
    end
    return text
  end

end # Window_ChainSkillList

#==============================================================================
# ■ Scene_Battle
#==============================================================================

class Scene_Battle < Scene_Base

  #--------------------------------------------------------------------------
  # alias method: create_all_windows
  #--------------------------------------------------------------------------
  alias scene_battle_create_all_windows_acs create_all_windows
  def create_all_windows
    scene_battle_create_all_windows_acs
    create_chain_skill_window
  end

  #--------------------------------------------------------------------------
  # new method: create_chain_skill_window
  #--------------------------------------------------------------------------
  def create_chain_skill_window
    @active_chain_skill_window = Window_ChainSkillList.new
    @active_chain_skill_counter = 0
  end

  #--------------------------------------------------------------------------
  # alias method: use_item
  #--------------------------------------------------------------------------
  alias scene_battle_use_item_acs use_item
  def use_item
    @subject.enable_active_chain(true)
    item = @subject.current_action.item
    chain_skill_list_appear(true, item)
    start_active_skill_counter(item)
    scene_battle_use_item_acs
    wait_active_skill_counter
    chain_skill_list_appear(false, item)
    @subject.enable_active_chain(false)
  end

  #--------------------------------------------------------------------------
  # new method: chain_skill_list_appear
  #--------------------------------------------------------------------------
  def chain_skill_list_appear(visible, skill)
    return if @subject.nil?
    return unless @subject.actor?
    return unless skill.is_a?(RPG::Skill)
    @active_chain_skill = 0
    @current_chain_skill = skill
    @active_chain_skill_window.reveal(@subject, skill) if visible
    @active_chain_skill_window.hide unless visible
  end

  #--------------------------------------------------------------------------
  # new method: refresh_active_chain_skill_window
  #--------------------------------------------------------------------------
  def refresh_active_chain_skill_window(battler)
    return unless @active_chain_skill_window.visible
    @active_chain_skill_window.refresh_check(battler)
  end

  #--------------------------------------------------------------------------
  # new method: start_active_skill_counter
  #--------------------------------------------------------------------------
  def start_active_skill_counter(skill)
    return unless @active_chain_skill_window.visible
    @active_chain_skill_counter = YEA::ACTIVE_CHAIN::MINIMUM_TIME
  end

  #--------------------------------------------------------------------------
  # new method: wait_active_skill_counter
  #--------------------------------------------------------------------------
  def wait_active_skill_counter
    return unless @active_chain_skill_window.visible
    wait(@active_chain_skill_counter)
  end

  #--------------------------------------------------------------------------
  # new method: update_active_chain_skill_counter
  #--------------------------------------------------------------------------
  def update_active_chain_skill_counter
    return if @active_chain_skill_counter == 0
    @active_chain_skill_counter -= 1
  end

  #--------------------------------------------------------------------------
  # alias method: update_basic
  #--------------------------------------------------------------------------
  alias scene_battle_update_basic_acs update_basic
  def update_basic
    scene_battle_update_basic_acs
    update_active_chain_skill_counter
    update_active_chain_skill_select
  end

  #--------------------------------------------------------------------------
  # new method: update_active_chain_skill_select
  #--------------------------------------------------------------------------
  def update_active_chain_skill_select
    return unless @active_chain_skill_window.visible
    return if @active_chain_skill > 0
    if Input.press?(:L)
      check_active_chain_skill(:L)
    elsif Input.press?(:R)
      check_active_chain_skill(:R)
    elsif Input.press?(:X)
      check_active_chain_skill(:X)
    elsif Input.press?(:Y)
      check_active_chain_skill(:Y)
    elsif Input.press?(:Z)
      check_active_chain_skill(:Z)
    end
  end

  #--------------------------------------------------------------------------
  # new method: check_active_chain_skill
  #--------------------------------------------------------------------------
  def check_active_chain_skill(button)
    skill_id = @current_chain_skill.chain_skill[button]
    return if skill_id.nil?
    return if $data_skills[skill_id].nil?
    chain_skill = $data_skills[skill_id]
    return unless @subject.usable?(chain_skill)
    return unless @subject.skills.include?(chain_skill)
    @active_chain_skill_counter = 12
    @active_chain_skill = skill_id
    @active_chain_skill_window.button = button
    YEA::ACTIVE_CHAIN::ACTIVE_SKILL_SOUND.play
    @subject.add_active_skill_chain(skill_id)
  end

end # Scene_Battle

#==============================================================================
#
# ▼ End of File
#
#==============================================================================
[/pre]

点评

那个浮空什么的部份是我自己用的部份,可以随意更改文字,比如说:XX技能第一段攻击  发表于 2017-8-6 15:42
回复

使用道具 举报

梦石
0
星屑
50
在线时间
26 小时
注册时间
2017-3-5
回帖
26

开拓者

发表于 2017-8-6 15:47:20 | 显示全部楼层
像是这样
360截图20170806154642009.jpg
360截图20170806154653770.jpg
360截图20170806154701971.jpg
360截图20170806154709665.jpg
360截图20170806154716401.jpg

点评

一个技能总共执行5次动画和5次的伤害  发表于 2017-8-6 20:41
一个技能放一次动画执行一次伤害。你这个是连击脚本。况且这样可以自选使用。我要一次性的执行  发表于 2017-8-6 20:41
回复

使用道具 举报

梦石
0
星屑
50
在线时间
26 小时
注册时间
2017-3-5
回帖
26

开拓者

发表于 2017-8-6 15:48:35 | 显示全部楼层
顺便问一下上次我问你的那个职业脚本里的学习技能部份怎么使用?{:8_464:}

点评

职业脚本就是设置一下什么职业什么等级转职成什么,其他设置按默认这样概念设置啊。还有你这个行不通  发表于 2017-8-6 20:40
就是那个职业填写几级学会什么技能啊。你就当这个人物有两个职业,一个职业一套技能不就完了  发表于 2017-8-6 20:39
回复

使用道具 举报

梦石
0
星屑
50
在线时间
26 小时
注册时间
2017-3-5
回帖
26

开拓者

发表于 2017-8-6 23:00:14 | 显示全部楼层
不是普通的技能获得,那个主次职业脚本貌似有个专门的技能学习系统。
360截图20170806225920144.jpg
360截图20170806230034943.jpg

点评

那没错了啊,就是这个脚本,初级魔法师相当于你这个人物在这里是10级,你魔法0个技能说明你要么没在初级魔法师里面设置技能,要么等级没达到  发表于 2017-8-7 10:32
回复

使用道具 举报

梦石
0
星屑
702
在线时间
326 小时
注册时间
2013-5-31
回帖
67
发表于 2017-8-7 13:16:25 | 显示全部楼层
1.参考横版战斗范例,可以做一个动作序列,如使用技能——判断动作序列是否存在该技能的连锁动作——(如果有)触发连锁——执行连锁完毕——结束使用技能。
关于连锁 则是触发第一段动画——显示伤害文字 ——第二段动画——显示伤害文字——第三段动画——显示伤害文字——(以此类推)——结束连锁环节。
2.$game_map.map_id
3.鉴于你提供的材料比较少,我只能说明:绘制图标只需要在相应地方draw_icon(item.icon_index, x, y)就好,参数分别是图标ID,X坐标,Y坐标,目测是refresh方法内。
4.因为不知道你具体要做什么,我只能说明:在相应的地方调用战斗者对象的重置回合计数方法reset_state_counts(state_id)即可,参数是状态ID。如果要重置制定回合数,建议修改这个方法,并加入@state_turn[state_id] = 指定回合数 if 某条件  之类的语句,具体内容视自身脚本内容而定。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
26 小时
注册时间
2017-3-5
回帖
26

开拓者

发表于 2017-8-9 07:24:34 | 显示全部楼层
但是10级初级魔法师已经有四个技能了
360截图20170809072406849.jpg

点评

埃里克有一个技能叫做强击A5级拥有(职业),强击10级拥有(B职业版) A等级是4 B是10,那么结果是强击A无法学会强击B就可以,满足了A不满足B。  发表于 2017-8-9 10:50
那没错啊,正常情况你一个角色到了一定的等级不是学会了技能,10级满足这四个技能的条件没毛病  发表于 2017-8-9 10:49
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部