Per 2016, RMID pindah ke RMID Discord (Invite link dihapus untuk mencegah spambot -Theo @ 2019). Posting sudah tidak bisa dilakukan lagi.
Mohon maaf atas ketidaknyamanannya dan mohon kerjasamanya.

Share | 
 

 [VX]Dhoom Script Workshop

Topik sebelumnya Topik selanjutnya Go down 
Pilih halaman : 1, 2, 3, 4  Next
[VX]Dhoom Script Workshop Empty2011-04-02, 16:43
Post[VX]Dhoom Script Workshop
#1
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
[VX]Dhoom Script Workshop Dhoom_ws
[VX]Dhoom Script Workshop Open

Ok... engg... (bingung mau nulis apaan).
Karna aku sedang mendalami RGSS2, tpi g punya ide mau bkin apaan, jadi aku bikin trid ini. Kalian bisa request script VX disini. Tapi, tidak semua request aku terima (seperti battle system yang aku masih belum sanggup). Hanya satu request yang kukerjakan hingga selesai, jadi yang lain ngantri ya XD

Ok, Request kubuka!

Template Request
Tipe/Nama Script:
Deskripsi Script:

[VX]Dhoom Script Workshop Accept_req
sekarang tergantung level script nya :hammer: lebih mudah lebih cepat

[VX]Dhoom Script Workshop Completed_req
Skill Cooldown for Oscar
Code:
#===============================================================================
#--------------------------=• Skill Cooldown •=---------------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.2
# Date Published: 05 - 04 - 2011
# Battle Addon
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# This script make a skill have cooldown.
#-------------------------------------------------------------------------------
# Compatibility:
# - Tankentai Sideview Battle System
# - Wij's Battle Macros
# Note: not tested in other battle system
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main
#  - Insert under all Battle System Core Script
#===============================================================================

module Dhoom
  module SkillCooldown
 
    SHOW_COOLDOWN_NUMBER = true #true = cooldown number of skill show
                                #      at the end of skill name
 
    COOLDOWN_COLOR = []  #<----Don't delete this line
 
    #RGB Color
    COOLDOWN_COLOR[1] = 255  #Red
    COOLDOWN_COLOR[2] = 0    #Green
    COOLDOWN_COLOR[3] = 0    #Blue
    COOLDOWN_COLOR[4] = 128  #Alpha
 
    SKILL_CD = []        #<----Don't delete this line
 
    #SKILL_CD[skill id] = number of cooldown (1 is minimum number)
    SKILL_CD[1] = 1
    SKILL_CD[2] = 9
   
    DONT_RESET_COOLDOWN_SWITCH = 1
  end
end

#===============================================================================
# Start
#===============================================================================
$imported = {} if $imported == nil
$imported["DSkillCooldown"] = true
#-------------------------------------------------------------------------------
# Window Base
#-------------------------------------------------------------------------------

class Window_Base
 
  def draw_skill_cooldown_name(item, x, y, enabled = true)
    if item != nil
      if @actor.skill_cooldown(item.id) != nil
        if @actor.skill_cooldown(item.id)!= 0
          cd_color = Color.new(Dhoom::SkillCooldown::COOLDOWN_COLOR[1],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[2],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[3],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[4])
          draw_icon(item.icon_index, x, y, enabled)
          self.contents.font.color = cd_color
          if Dhoom::SkillCooldown::SHOW_COOLDOWN_NUMBER
            self.contents.draw_text(x + 24, y, 172, WLH, item.name + '(' +@actor.skill_cooldown(item.id).to_s + ')')
          else
            self.contents.draw_text(x + 24, y, 172, WLH, item.name)
          end
        else
          draw_icon(item.icon_index, x, y, enabled)
          self.contents.font.color = normal_color
          self.contents.font.color.alpha = enabled ? 255 : 128
          self.contents.draw_text(x + 24, y, 172, WLH, item.name)
        end
      else
        draw_icon(item.icon_index, x, y, enabled)
        self.contents.font.color = normal_color
        self.contents.font.color.alpha = enabled ? 255 : 128
        self.contents.draw_text(x + 24, y, 172, WLH, item.name)
      end
    end
  end
end

#-------------------------------------------------------------------------------
# Window Skill
#-------------------------------------------------------------------------------

class Window_Skill < Window_Selectable
 
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    skill = @data[index]
    if skill != nil
      rect.width -= 4
      enabled = @actor.skill_can_use?(skill)
      draw_skill_cooldown_name(skill, rect.x, rect.y, enabled)
      self.contents.draw_text(rect, @actor.calc_mp_cost(skill), 2)
    end
  end
end

#-------------------------------------------------------------------------------
# Game Actor
#-------------------------------------------------------------------------------

class Game_Battler
 
  alias dsc_battler_init initialize
  alias dsc_skill_can_use? skill_can_use?
 
  def initialize
    dsc_battler_init
    @skill_cooldown = []
  end
 
  def make_cooldown_value(id)
    @skill_cooldown[id] = Dhoom::SkillCooldown::SKILL_CD[id]
    if $imported == nil
      @skill_cooldown[id] += 1
    elsif $imported["TankentaiATB"]
      @skill_cooldown[id] -= 0
    elsif $imported["TankentaiSideview"]
      @skill_cooldown[id] += 1
    else
      @skill_cooldown[id] += 1
    end
  end
 
  def skill_cooldown(id)
    return @skill_cooldown[id]
  end
 
  def decrease_cooldown(id)
    @skill_cooldown[id] -= 1
  end
 
  def skill_can_use?(skill)
    if skill_cooldown(skill.id) != nil
      return false if skill_cooldown(skill.id) != 0
    end
    dsc_skill_can_use?(skill)
  end
 
  def reset_cooldown
    @skill_cooldown = []
  end
end

#-------------------------------------------------------------------------------
# Scene Battle
#-------------------------------------------------------------------------------

class Scene_Battle < Scene_Base
 
  alias dsc_execute_action_skill execute_action_skill
  alias dsc_start_actor_command_selection start_actor_command_selection
  alias dsc_battle_end battle_end
 
  def execute_action_skill
    dsc_execute_action_skill
    skill = @active_battler.action.skill
    if Dhoom::SkillCooldown::SKILL_CD[skill.id] != nil
      @active_battler.make_cooldown_value(skill.id)
    end
  end
 
  def start_actor_command_selection
    dsc_start_actor_command_selection
    if @active_battler != nil and @active_battler.actor?   
      for skill in @active_battler.skills
        if @active_battler.skill_cooldown(skill.id) != nil
          if @active_battler.skill_cooldown(skill.id) != 0
            @active_battler.decrease_cooldown(skill.id)
          end
        end
      end
    elsif @commander !=nil
      for skill in @commander.skills
        if @commander.skill_cooldown(skill.id) != nil
          if @commander.skill_cooldown(skill.id) != 0
            @commander.decrease_cooldown(skill.id)
          end
        end
      end
    end
  end
 
  def battle_end(result)
    if !$game_switches[Dhoom::SkillCooldown::DONT_RESET_COOLDOWN_SWITCH]
      for actor in $game_party.members
        actor.reset_cooldown
      end
      for enemy in $game_troop.members
        enemy.reset_cooldown
      end
    end
    dsc_battle_end(result)
  end
end

#===============================================================================
# End
#===============================================================================


Easy Combo Skill Script for Fly-Man
Code:
#===============================================================================
#----------------------=• Easy Skill Combo Script •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.1
# Date Published: 07 - 04 - 2011
# Battle Addon
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Changelog:
# V:1.1 - Make compatible with Tankentai SBS and Add combo chain.
#-------------------------------------------------------------------------------
# Introduction:
# Make a combo skill.
#-------------------------------------------------------------------------------
# Compatibility:
# - Tankentai Sideview Battle System
# Note: not tested in other battle system
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module Dhoom 
  module SkillCombo
   
    COMBO_TEXT = "COMBO!!!" #The shown text if combo skill triggered.
                            #Leave empty like "", if you don't want it appear.
   
    FIRST_SKILL = []  #<----Don't delete this line
    SECOND_SKILL = []  #<----Don't delete this line
    COMBO_SKILL = []  #<----Don't delete this line
   
    #FIRST/SECOND/COMBO_SKILL[combo id] = skill id
    FIRST_SKILL[1] = 1
    SECOND_SKILL[1] = 2
    COMBO_SKILL[1] = 3 #--
                      # | Combo Chain
    FIRST_SKILL[2] = 3 #--
    SECOND_SKILL[2] = 41
    COMBO_SKILL[2] = 6
   
  end
end

#===============================================================================
# Start
#===============================================================================

$imported = {} if $imported == nil
$imported["DSkillCombo"] = true

#-------------------------------------------------------------------------------
# Scene Battle
#-------------------------------------------------------------------------------

class Scene_Battle < Scene_Base
 
  alias dsco_execute_action_attack execute_action_attack
  alias dsco_execute_action_guard execute_action_guard
  alias dsco_execute_action_item execute_action_item
 
  if $imported["TankentaiATB"] == nil
   
    alias dsco_turn_end turn_end
   
    def turn_end
      dsco_turn_end
      @first_skill = []
    end
  end
 
  def execute_action_guard
    dsco_execute_action_guard
    @first_skill = []
  end
 
  def execute_action_item
    dsco_execute_action_item
    @first_skill = []
  end
 
  def execute_action_attack
    dsco_execute_action_attack
    @first_skill = []
  end
 
  if $imported["TankentaiSideview"]
   
    def pop_help(obj)
      return if obj.extension.include?("HELPHIDE")
      @help_window = Window_Help.new if @help_window == nil
      if obj.is_a?(RPG::Skill)
        if @combo
          @help_window.set_text(Dhoom::SkillCombo::COMBO_TEXT + ' ' + obj.name + '!', 1)
        else
          @help_window.set_text(obj.name, 1)
        end
      else
        @help_window.set_text(obj.name, 1)
      end
      @help_window.visible = true
    end
   
    def execute_action_skill
      if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
        @first_skill = []
        @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
        @combo = false
      elsif Dhoom::SkillCombo::SECOND_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::SECOND_SKILL.index(@active_battler.action.skill.id)
        if @first_skill != nil
          if Dhoom::SkillCombo::FIRST_SKILL[i] == @first_skill[i]
            @first_skill = []
            @active_battler.action.set_skill(Dhoom::SkillCombo::COMBO_SKILL[i])
            if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
              i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
              @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            end
            @combo = true
          else
            @first_skill = []
            @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            @combo = false
          end
        else
          @first_skill = []
          @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
          @combo = false
        end
      end
      skill = @active_battler.action.skill
      return unless @active_battler.action.valid? # 3.3d, Force action bug fix
      if skill.plus_state_set.include?(1)
        for member in $game_party.members + $game_troop.members
          next if member.immortal
          next if member.dead?
          member.dying = true
        end
      else
        immortaling
      end
      target_decision(skill)
      @spriteset.set_action(@active_battler.actor?, @active_battler.index, skill.base_action)
      pop_help(skill)
      playing_action
      @active_battler.mp -= @active_battler.calc_mp_cost(skill)
      @status_window.refresh
      $game_temp.common_event_id = skill.common_event_id
    end
   
  else
   
    def execute_action_skill
      if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
        @first_skill = []
        @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
        skill = @active_battler.action.skill
        text = @active_battler.name + skill.message1
        @message_window.add_instant_text(text)
      elsif Dhoom::SkillCombo::SECOND_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::SECOND_SKILL.index(@active_battler.action.skill.id)
        if @first_skill != nil
          if Dhoom::SkillCombo::FIRST_SKILL[i] == @first_skill[i]
            @first_skill = []
            @active_battler.action.set_skill(Dhoom::SkillCombo::COMBO_SKILL[i])
            if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
              i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
              @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            end
            skill = @active_battler.action.skill
            text = Dhoom::SkillCombo::COMBO_TEXT + ' ' + skill.name + '!'
            text2 = @active_battler.name + skill.message1
            @message_window.add_instant_text(text)
            wait(10)
            @message_window.add_instant_text(text2)
          else
            @first_skill = []
            @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            skill = @active_battler.action.skill
            text = @active_battler.name + skill.message1
            @message_window.add_instant_text(text)
          end
        else
          @first_skill = []
          @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
          skill = @active_battler.action.skill
          text = @active_battler.name + skill.message1
          @message_window.add_instant_text(text)
        end 
      end
      unless skill.message2.empty?
        wait(10)
        @message_window.add_instant_text(skill.message2)
      end
      targets = @active_battler.action.make_targets
      display_animation(targets, skill.animation_id)
      @active_battler.mp -= @active_battler.calc_mp_cost(skill)
      $game_temp.common_event_id = skill.common_event_id
      for target in targets
        target.skill_effect(@active_battler, skill)
        display_action_effects(target, skill)
      end
    end
  end
end

#===============================================================================
# End
#===============================================================================

Hunting Level for Irsyad
Code:
#===============================================================================
#--------------------------=• Hunting Level •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 17 - 05 - 2011
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Make hunting level by defeat enemy. Can be used in event by variables.
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module Dhoom
  module HEXP
   
    VAR_HEXP = 1 #Variable for Hunt EXP
    VAR_HLEVEL = 2 #Variable for Hunt Level
   
    BASE_EXP = 1 #Base monster hunt EXP
    START_LEVEL = 1 #Starting hunting level
    MONS_EXP = [] #Don't delete
   
    MONS_EXP[1] = 13 #MONS_EXP[enemy id] = hunt exp
   
    EXP_REQ = 25 #Hunt exp requirment for level up. EXP REQ * hunt Level
   
  end
end

module RPG
  class Enemy
   
    include Dhoom::HEXP
   
    def create_hexp
      if !MONS_EXP[@id].nil?
        @hunt_exp = MONS_EXP[@id]
      else
        @hunt_exp = BASE_EXP
      end
    end
   
    def hunt_exp
      if @hunt_exp == nil
        create_hexp
      end
      return @hunt_exp
    end
  end
end

class Game_Enemy < Game_Battler
 
  def hunt_exp
    return enemy.hunt_exp
  end
end


class Game_Party < Game_Unit
 
  include Dhoom::HEXP
 
  attr_accessor :hunt_exp
  attr_accessor :hunt_level
 
  alias dhoom_hexp_party_ini initialize
 
  def initialize
    super
    dhoom_hexp_party_ini
    @hunt_exp = 0
    @hunt_level = START_LEVEL
  end
 
  def check_hlevel_up
    if EXP_REQ * @hunt_level < @hunt_exp
      @hunt_exp -= @hunt_level *EXP_REQ
      @hunt_level += 1
    end
  end
end

class Game_Troop < Game_Unit
 
  def hunt_exp_total
    hunt_exp = 0
    for enemy in dead_members
      hunt_exp += enemy.hunt_exp unless enemy.hidden
    end
    return hunt_exp
  end
end

class Scene_Title < Scene_Base
  include Dhoom::HEXP
  alias dhoom_hexp_title_main main
 
  def main
    dhoom_hexp_title_main
    $game_variables[VAR_HEXP] = $game_party.hunt_exp
    $game_variables[VAR_HLEVEL] = $game_party.hunt_level
  end
end


class Scene_Battle < Scene_Base
 
  include Dhoom::HEXP 
  alias dhoom_hexp_disp_lev display_level_up
 
  def display_level_up
    dhoom_hexp_disp_lev
    $game_party.hunt_exp += $game_troop.hunt_exp_total
    $game_party.check_hlevel_up
    $game_variables[VAR_HEXP] = $game_party.hunt_exp
    $game_variables[VAR_HLEVEL] = $game_party.hunt_level
  end
end

Minus Gold for Kuro Creator
Code:
#===============================================================================
#----------------------------=• Minus Gold •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 17 - 05 - 2011
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Allowing to have minus gold.
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================


COLOR = Color.new(255,0,0)

class Game_Party < Game_Unit
  def gain_gold(n)
    @gold = [[@gold + n, -9999999].max, 9999999].min
  end
end

class Window_Base < Window
  def draw_currency_value(value, x, y, width)
    cx = contents.text_size(Vocab::gold).width   
    if value < 0
      self.contents.font.color = COLOR
      self.contents.draw_text(x, y, width-cx-2, WLH, value, 2)
    else
      self.contents.font.color = normal_color
      self.contents.draw_text(x, y, width-cx-2, WLH, value, 2)
    end
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, width, WLH, Vocab::gold, 2)
  end
end

Varied Status for Kuro Creator
Code:
#===============================================================================
#--------------------------=• Varied Status •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 17 - 05 - 2011
# Battle Add-on
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Varieting enemy status by random number.
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module Dhoom
  module VARIED
   
    BASE_VARIED = 20 #Base random number for all enemy, except ENEMY_VARIED
   
    ENEMY_VARIED = [] #<-- Don't delete.
    ENEMY_VARIED[1] = 20 #ENEMY_VARIED[enemy id] = number
   
  end
end

class Game_Battler
  include Dhoom::VARIED
  def make_varied_status(id)
    if ENEMY_VARIED[id] != nil
      varied = rand(ENEMY_VARIED[id])
    else
      varied = rand(BASE_VARIED)
    end
    @maxhp_plus += (varied * 10)
    @maxmp_plus += (varied * 5)
    @atk_plus += varied
    @def_plus += varied
    @spi_plus += varied
    @agi_plus += varied
  end
end

class Game_Enemy
  def varied_status
    make_varied_status(@enemy_id)
    @hp = maxhp
    @mp = maxmp
  end
end

class Game_Troop
  alias dhoom_varied_make_names make_unique_names
  def make_unique_names
    dhoom_varied_make_names
    for enemy in members
      enemy.varied_status
    end
  end
end

Colorfull for LiTTleDRAgo
Code:
#===============================================================================
#----------------------------=• Colorfull •=------------------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 26 - 05 - 2011
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Change color of items, armors, weapons, actor name, and actor class.
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main
#===============================================================================

module Dhoom
  module COL
    BASE_ACTOR_COL = Color.new(125,125,0)
    BASE_CLASS_COL = Color.new(50,50,0)
    BASE_SKILL_COL = Color.new(0,0,220)
    BASE_ITEM_COL = Color.new(0,230,0)
    BASE_ARMOR_COL = Color.new(0,150,150)
    BASE_WEAPON_COL = Color.new(255,225,0)
 
    ACTOR_COL = []
    ACTOR_COL[1] = Color.new(255,0,0)
 
    CLASS_COL = []
    CLASS_COL[1] = Color.new(0,255,0)
 
    SKILL_COL = []
    SKILL_COL[1] = Color.new(0,0,255)
 
    ITEM_COL = []
    ITEM_COL[1] = Color.new(0,125,125)
 
    ARMOR_COL = []
    ARMOR_COL[1] = Color.new(125,125,0)
 
    WEAPON_COL = []
    WEAPON_COL[1] = Color.new(0,255,255)
  end
end

class Window_Base < Window
  include Dhoom::COL
 
  def hp_color2(actor)
    return knockout_color if actor.hp == 0
    return crisis_color if actor.hp < actor.maxhp / 4
    return ACTOR_COL[actor.id] if ACTOR_COL[actor.id].is_a?(Color)
    return BASE_ACTOR_COL
  end
 
  def class_color(actor)
    return CLASS_COL[actor.id] if CLASS_COL[actor.id].is_a?(Color)
    return BASE_CLASS_COL
  end
 
  def xsx_color(item)
    if item.is_a?(RPG::Skill)
      return SKILL_COL[item.id] if SKILL_COL[item.id].is_a?(Color)
      return BASE_SKILL_COL
    elsif item.is_a?(RPG::Item)
      return ITEM_COL[item.id] if ITEM_COL[item.id].is_a?(Color)
      return BASE_ITEM_COL
    elsif item.is_a?(RPG::Armor)
      return ARMOR_COL[item.id] if ARMOR_COL[item.id].is_a?(Color)
      return BASE_ARMOR_COL
    elsif item.is_a?(RPG::Weapon)
      return WEAPON_COL[item.id] if WEAPON_COL[item.id].is_a?(Color)
      return BASE_WEAPON_COL
    end
  end
 
  def draw_actor_name(actor, x, y)
    self.contents.font.color = hp_color2(actor)
    self.contents.draw_text(x, y, 108, WLH, actor.name)
  end
 
  def draw_actor_class(actor, x, y)
    self.contents.font.color = class_color(actor)
    self.contents.draw_text(x, y, 108, WLH, actor.class.name)
  end
 
  def draw_item_name(item, x, y, enabled = true)
    if item != nil
      draw_icon(item.icon_index, x, y, enabled)
      self.contents.font.color = xsx_color(item)
      self.contents.font.color.alpha = enabled ? 255 : 128
      self.contents.draw_text(x + 24, y, 172, WLH, item.name)
    end
  end
end

Skills Separator for Milan Nacht
Code:
#===============================================================================
#-------------------------=• Skills Separator •=---------------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 26 - 05 - 2011
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# ...
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main
#===============================================================================

module Dhoom
  module SKSP
 
    COLUMN_NAME = [] #<--- Don't delete this line
    COLUMN_HELP = [] #<--- Don't delete this line
    COLUMN_SKILL = [] #<--- Don't delete this line
    COLUMN_SKILLSET = [] #<--- Don't delete this line
 
    #COLUMN_NAME/HELP[actor id] = [""]
    COLUMN_NAME[1] = ["Skillset A", "Skillset B", "Skillset C", "Skillset D"]
    COLUMN_HELP[1] = ["Skillset number 1", "Skillset number 2", "Skillset number 3", "Skillset number 4"]
    COLUMN_NAME[2] = ["Fire", "Wind", "Earth", "Water", "Ice"]
    COLUMN_HELP[2] = ["Skillset number 1", "Skillset number 2", "Skillset number 3", "Skillset number 4", "Skillset number 5"]
 
    #Skill for displaying in skillset
    COLUMN_SKILL[0] = [1,2,3,4,5]
    COLUMN_SKILL[1] = [6,7,8]
    COLUMN_SKILL[2] = [9,10,11]
    COLUMN_SKILL[3] = [12,13,33]
    COLUMN_SKILL[4] = [13,23,33,43,53]
    COLUMN_SKILL[5] = [6,7,8]
    COLUMN_SKILL[6] = [9,10,11]
    COLUMN_SKILL[7] = [12,13,33]
    COLUMN_SKILL[8] = [12,13,33] 
 
    COLUMN_SKILLSET[1] = [0,1,2,3]
    COLUMN_SKILLSET[2] = [4,5,6,7,8]
     
  end
end

class Window_Skill2 < Window_Selectable
  include Dhoom::SKSP
  def initialize(x, y, width, height, actor, set)
    super(x, y, width, height)
    @actor = actor
    @set = set
    @column_max = 2
    self.index = 0
    refresh
  end
 
  def set(set)
    @set = set
  end
 
  def skill
    return @data[self.index]
  end
 
  def refresh
    @data = []
    for skill in @actor.skills
      @data.push(skill) if COLUMN_SKILL[COLUMN_SKILLSET[@actor.id][@set]].include?(skill.id)
    end
    @item_max = @data.size
    create_contents
    for i in 0...@item_max
      draw_item(i)
    end
  end
 
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    skill = @data[index]
    if skill != nil
      rect.width -= 4
      enabled = @actor.skill_can_use?(skill)
      draw_item_name(skill, rect.x, rect.y, enabled)
      self.contents.draw_text(rect, @actor.calc_mp_cost(skill), 2)
    end
  end
 
  def update_help
    @help_window.set_text(skill == nil ? "" : skill.description)
  end
end


class Scene_Skill < Scene_Base
  include Dhoom::SKSP
 
  alias dhoom_sksp_skill_update update
  alias dhoom_sksp_skill_start start
  alias dhoom_sksp_skill_terminate terminate
 
  def post_start
    super
    open_command_window
  end
 
  def start
    super
    dhoom_sksp_skill_start
    @skill_window = Window_Skill2.new(0, 112, 544, 304, @actor, 0)
    @skill_window.viewport = @viewport
    @skill_window.help_window = @help_window
    @skill_window.active = false
    @help_window.set_text(COLUMN_HELP[@actor.id][0])
    create_command_window
  end
 
  def create_command_window
    @command_window = Window_Command.new(172, COLUMN_NAME[@actor.id])
    @command_window.x = (544 - @command_window.width) / 2
    @command_window.y = (416 - @command_window.height) / 2
    @command_window.openness = 0
    @command_window.active = true
  end
 
  def update
    super
    dhoom_sksp_skill_update
    @command_window.update
    if @command_window.active and @skill_window.active == false
      update_command_window
    elsif @target_window.active
      update_target_selection
    elsif @skill_window.active
      update_skill_selection
    end
  end
 
  def terminate
    super
    dhoom_sksp_skill_terminate
    @command_window.dispose
  end
 
  def update_command_window
    unless @command_activated
      @command_activated = true
      return
    end
    if Input.trigger?(Input::B)   
      Sound.play_cancel
      close_command_window
      return_scene
    elsif Input.trigger?(Input::R)
      Sound.play_cursor
      next_actor
    elsif Input.trigger?(Input::L)
      Sound.play_cursor
      prev_actor
    elsif Input.trigger?(Input::C)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      Sound.play_decision
      close_command_window
      @command_window.active = false
      @skill_window.active = true
    elsif Input.trigger?(Input::UP)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      @help_window.set_text(COLUMN_HELP[@actor.id][@set])
    elsif Input.trigger?(Input::DOWN)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      @help_window.set_text(COLUMN_HELP[@actor.id][@set])
    end
  end
 
  def update_skill_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel     
      open_command_window
      @skill_window.active = false     
      @command_window.active = true
    elsif Input.trigger?(Input::C)
      @skill = @skill_window.skill
      if @skill != nil
        @actor.last_skill_id = @skill.id
      end
      if @actor.skill_can_use?(@skill)
        Sound.play_decision
        determine_skill
      else
        Sound.play_buzzer
      end
    end
  end
 
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
 
  def close_command_window
    @command_activated = false
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
end

class Scene_Battle < Scene_Base
  include Dhoom::SKSP
  alias dhoom_sksp_battle_update update
  if $imported != nil and $imported["TankentaiSideview"]
    alias dhoom_sksp_end_selection end_target_selection
  else
    alias dhoom_sksp_enemy_selection end_target_enemy_selection
    alias dhoom_sksp_actor_selection end_target_actor_selection
  end
 
  def update
    super
    update_basic(true)
    update_info_viewport               
    if $game_message.visible
      @info_viewport.visible = false
      @message_window.visible = true
    end
    unless $game_message.visible       
      return if judge_win_loss         
      update_scene_change
      if @target_enemy_window != nil
        update_target_enemy_selection 
      elsif @target_actor_window != nil
        update_target_actor_selection 
      elsif @skill_window != nil and @skill_window.active
        update_skill_selection       
      elsif @command_window != nil and @command_window.active
        update_command_window
      elsif @item_window != nil
        update_item_selection         
      elsif @party_command_window.active
        update_party_command_selection 
      elsif @actor_command_window.active
        update_actor_command_selection 
      else
        process_battle_event         
        process_action               
        process_battle_event         
      end
    end
  end
 
  def start_skill_selection
    @help_window = Window_Help.new
    @skill_window = Window_Skill2.new(0, 56, 544, 232, @active_battler, 0)
    @skill_window.active = false
    @help_window.set_text(COLUMN_HELP[@active_battler.id][0]) 
    @actor_command_window.active = false
    create_command_window
    open_command_window
    @command_window.active = true
    @last_window = true
  end
 
  def update_skill_selection
    @skill_window.active = true
    @skill_window.update
    @help_window.update
    if Input.trigger?(Input::B)
      Sound.play_cancel
      open_command_window
      @skill_window.active = false
      @set = @command_window.index
      @help_window.set_text(COLUMN_HELP[@active_battler.id][@set])
      @command_window.active = true
    elsif Input.trigger?(Input::C)
      @skill = @skill_window.skill
      if @skill != nil
        @active_battler.last_skill_id = @skill.id
      end
      if @active_battler.skill_can_use?(@skill)
        Sound.play_decision
        determine_skill
      else
        Sound.play_buzzer
      end
    end
  end
 
  def update_command_window
    @command_window.update
    @help_window.update
    @skill_window.update
    unless @command_activated
      @command_activated = true
      return
    end
    if Input.trigger?(Input::B)   
      Sound.play_cancel
      close_command_window
      @skill_window.dispose
      @skill_window = nil
      @help_window.dispose
      @help_window = nil
      @command_window.dispose
      @command_window = nil
      @last_window = false
      @actor_command_window.active = true
    elsif Input.trigger?(Input::C)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      Sound.play_decision
      close_command_window
      @command_window.active = false
      @skill_window.active = true
    elsif Input.trigger?(Input::UP)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      @help_window.set_text(COLUMN_HELP[@active_battler.id][@set])
    elsif Input.trigger?(Input::DOWN)
      @set = @command_window.index
      @skill_window.set(@set)
      @skill_window.refresh
      @help_window.set_text(COLUMN_HELP[@active_battler.id][@set])
    end
  end
 
  if $imported != nil and $imported["TankentaiSideview(Kaduki)"]
    def end_target_selection
      dhoom_sksp_end_selection
      if @last_window
        @skill_window.active = true if @skill_window != nil
      end
    end
  else
    def end_target_enemy_selection
      dhoom_sksp_enemy_selection
      if @last_window
        @skill_window.active = true if @skill_window != nil
      end
    end
 
    def end_target_actor_selection
      dhoom_sksp_actor_selection
      if @last_window
        @skill_window.active = true if @skill_window != nil
      end   
    end
  end
 
  def create_command_window
    @command_window = Window_Command.new(172, COLUMN_NAME[@active_battler.id])
    @command_window.x = (544 - @command_window.width) / 2
    @command_window.y = (416 - @command_window.height) / 2
    @command_window.openness = 0
    @command_window.active = true
  end
 
  def open_command_window
    @command_window.open
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 255
  end
 
  def close_command_window
    @command_activated = false
    @command_window.close
    begin
      @command_window.update
      Graphics.update
    end until @command_window.openness == 0
  end
end

Music Player for rizkhi04
Code:
#===============================================================================
#------------------------- -=• Music Player •=----------------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 13 - 06 - 2011
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Like the name, this script for choose and play BGM music.
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module DHOOM
  module MSPR 
   
    #return to scene when closed. EG: Scene_Menu, Scene_Title,etc
    RETURN_SCENE = Scene_Map
   
    #Window Properties------------------------------------------|
    WINDOW_PLAY_WIDTH = 320
    WINDOW_PLAY_ANIM = true #when true, the text will animation
    WINDOW_PLAY_OPACITY = 255
    NP_TEXT = "Now Playing: "
   
    WINDOW_MUSC_WIDTH = 320
    WINDOW_MUSC_HEIGHT = nil #This will be auto if nil
    WINDOW_MUSC_OPACITY = 255
   
    STOP_INPUT = Input::A #Button to stop BGM. See game properties (F1)
                          #for the button
                         
    BACKGROUND = "" #Leave empty if you don't want to change Background
                    #the background image must be in "Graphics/Pictures/" folder
    BACKGROUND_X = 0
    BACKGROUND_Y = 0
    BACKGROUND_OPACITY = 255
    #-----------------------------------------------------------|
   
    MUSICS = [] #<--- Don't delete this line
   
    #MUSICS[id] = ["bgm filename"]
    MUSICS[1] = ["Battle1","Theme1","Scene5"]
   
    MUSICS[2] = ["Battle3","Theme1","Scene4","Scene1","Battle3",
    "Battle3","Battle3","Battle3","Battle3","Battle3","Battle3",
    "Scene1","Scene1","Scene1","Scene1","Scene1","Scene1","Scene1"]
   
    #TO CALL THE SCENE:
    # Scene_MPlayer.new(MUSICS id)
   
  end
end

module RPG
  class BGM < AudioFile
    def self.player_play(name)
      if name.empty?
        Audio.bgm_stop
        @p_last = "None"
      else
        Audio.bgm_play("Audio/BGM/" + name)
        @p_last = name
      end
    end
    def self.p_last
      return @p_last if @p_last != nil
      return "None"
    end
  end
end

class Window_MPlayer < Window_Base
  include DHOOM::MSPR
  def initialize
    super(0,0,WINDOW_PLAY_WIDTH,56)
    self.contents = Bitmap.new(width - 32, height - 32)
    self.ox = 0
    refresh
  end
 
  def refresh
    self.contents.clear
    self.contents.draw_text(0, 0, 384, WLH, NP_TEXT + RPG::BGM.p_last)
    a = RPG::BGM.p_last.size
    if a <= 100
      @speed = 3
    elsif a <= 250
      @speed = 2.5
    elsif a <= 400
      @speed = 2
    else
      @speed = 1
    end
  end
 
  def update
    if WINDOW_PLAY_ANIM
      self.ox += @speed
      if self.ox >= 544
        self.ox = -544
      end
    end
  end
end


class Scene_MPlayer < Scene_Base
  include DHOOM::MSPR
  def initialize(music)
    @music = music
  end
 
  def start
    super
    if !BACKGROUND.empty?
      @bg = Sprite.new
      @bg.bitmap = Cache.picture(BACKGROUND)
      @bg.x = BACKGROUND_X
      @bg.y = BACKGROUND_Y
      @bg.opacity = BACKGROUND_OPACITY
    else
      create_menu_background
    end
    @music_window = Window_Command.new(WINDOW_MUSC_WIDTH, MUSICS[@music])
    @music_window.visible = true
    @music_window2 = Window_MPlayer.new
    @music_window.x = (544 - @music_window.width) / 2
    @music_window2.x = (544 - @music_window2.width) / 2
    @music_window.y = @music_window2.height
    if WINDOW_MUSC_HEIGHT != nil
      @music_window.height = WINDOW_MUSC_HEIGHT
    end
    a = 416 - @music_window.y
    if @music_window.height > a
      @music_window.height = a
    end
    if $last_mp_index != nil and $last_mp_index[@music] != nil
      @music_window.index = $last_mp_index[@music]
    end
    @music_window.opacity = WINDOW_MUSC_OPACITY
    @music_window2.opacity = WINDOW_PLAY_OPACITY   
  end
 
  def update
    super
    @music_window.update
    @music_window2.update
    if !@bg.nil? 
      @bg.update
    else
      update_menu_background
    end
    update_window
  end
 
  def update_window
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = RETURN_SCENE.new
    elsif Input.trigger?(Input::C)
      Sound.play_decision
      RPG::BGM.player_play(MUSICS[@music][@music_window.index])
      $last_mp_index = []
      $last_mp_index[@music] = @music_window.index
      @music_window2.refresh
    elsif Input.trigger?(STOP_INPUT)
      Sound.play_decision
      RPG::BGM.player_play("")
      @music_window2.refresh
    end
  end
 
  def terminate
    super
    @music_window.dispose
    @music_window2.dispose
    if !@bg.nil?
      @bg.dispose
    else
      dispose_menu_background
    end
  end
end

Semua script yang aku post di thread ini
[VX]Dhoom Script Workshop Credit


Terakhir diubah oleh DrDhoom tanggal 2012-09-18, 13:39, total 18 kali diubah
[VX]Dhoom Script Workshop Empty2011-04-02, 16:45
PostRe: [VX]Dhoom Script Workshop
#2
Oscar 
Senior
Senior
Oscar

Level 5
Posts : 830
Thanked : 13
Engine : RMVX
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop Vide
Nama Script: Skill Cooldown
Tipe: Standard Battle System Add-on

Deskripsi script:
Addon buat BS standar / original RMVX. Scriptnya untuk membuat skill cooldown. Maksudnya setiap kita keluarin skill ada jeda waktu jadi tidak setiap turn dia bisa mengeluarkan skill seenaknya.

Scripter's Clue:
Cari di RGSS2 prosedur yang mematikan pilihan skill saat kehabisan MP atau kena status silence.
Terapkan prosedur itu selama waktu cooldown masih ada.



Nama: Item / Equpment Durability.
Tipe: Stand alone

Deskripsi:
Setiap benda seperti senjata atau armor memliki semacam durability. Jika durability habis maka bajunya akan rusak.

Scripter's Clue:
Setiap Player menekan Equip buatlah satu variabel baru yang menunjukkan benda itu kalo bisa memakai array, contoh => Weapon[Y] = XXX , Y = index dari benda itu di database, sedang XXX adalah nilai durabilitynya. Jika XXX habis maka decrease item/weapon/armor dengan index tsb. Lalu nilai XXX di reset menjadi penuh lagi.




Mohon maap bukannya sok pintar ngasih scripter's clue :sembah: , itu cuman saran gw doang, dipakai silahkan engga juga gpp, siapa tau situ lebih manteb :thumbup:


Terakhir diubah oleh Oscar tanggal 2011-04-02, 17:04, total 1 kali diubah
[VX]Dhoom Script Workshop Empty2011-04-02, 17:00
PostRe: [VX]Dhoom Script Workshop
#3
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
wogh mntep pnjlsannya... kukerjain dulu :kabur:
[VX]Dhoom Script Workshop Empty2011-04-02, 17:16
PostRe: [VX]Dhoom Script Workshop
#4
Seintz 
Novice
Novice
Seintz

Level 5
Posts : 127
Thanked : 0
Engine : RMVX
Skill : Very Beginner
Type : Event Designer

[VX]Dhoom Script Workshop Vide
Nama Script: Ragnarok Style Textbox
Tipe: Apa ya ? Add-on mungkin.

Deskripsi script:
Script yang bisa menampilkan textbox berisi text seperti message box. Saya kurang paham kalau menjelaskan begini. Mending lihat contohnya aja yaaa.

[VX]Dhoom Script Workshop Ragnarok_TheGreatAlchemist_talk
Itu pake bahasa apa saya juga gak tahu. Yang jelas nanti modelnya kaya gitu.

Scripter's Clue:
Gak perlu pake event command 'message', tapi via 'script' aja. Niatnya sih, biar kapasitas huruf yang bisa dimuat jadi lebih banyak kalo via 'script'. Kalo via command kan dikit. Tapi penggunaan kode-kodenya sama kaya kodenya via command 'message'.

Bingung ngejelasinnya.
Tapi thanks banget kalo bisa direalisasikan.
Good luck!
[VX]Dhoom Script Workshop Empty2011-04-02, 17:32
PostRe: [VX]Dhoom Script Workshop
#5
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
rada g ngrti nih :hammer:
itu fungsinya sama kayak message kan? lalu textbox nya dibikin scroll?(klo text nya kpnjngn)
dan choice nya sma kyk dgmbar?
[VX]Dhoom Script Workshop Empty2011-04-02, 18:28
PostRe: [VX]Dhoom Script Workshop
#6
fly-man 
Poison Elemental
Anak Cantik
fly-man

Level 5
Posts : 917
Thanked : 11
Engine : RMVX
Skill : Beginner
Type : Artist
Awards:

[VX]Dhoom Script Workshop Vide
Nama Script: Fly-Man Battle system
Deskripsi script: membuat battle system di mana tidak ada attack.. untuk menyerang harus melakukan skill.. d script itu ada pengaturan mana regen/turn-nya tiap character.. trus ketika menyerang hanya pihak yang bersangkutan yang tampak (character yang menyerang dan yang di serang).

Sekian saja.. makasi makasi XD
[VX]Dhoom Script Workshop Empty2011-04-02, 18:37
PostRe: [VX]Dhoom Script Workshop
#7
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
waduh... kan udah kukasih tau diawal klo aq blum bsa nrima req battle system :hammer:
[VX]Dhoom Script Workshop Empty2011-04-02, 18:46
PostRe: [VX]Dhoom Script Workshop
#8
fly-man 
Poison Elemental
Anak Cantik
fly-man

Level 5
Posts : 917
Thanked : 11
Engine : RMVX
Skill : Beginner
Type : Artist
Awards:

[VX]Dhoom Script Workshop Vide
maaf - maaf tadi lum baca ampe selese.. aku ganti req

Nama: Easy Skill Combo Script (ESCS)

Deskripsi: mempermudah pengguna RMVX melakukan pengaturan skill combo

clue: jika player 1 melakukan skill 1 dan player 2 melakukan skill 2 maka yang d keluarkan player 2 adalah skill 3 bukan skill 1

namun jika player 1 tidak melakukan skill 1 terlebih dahulu.. maka semua berjalan biasa saja.. yaitu player 2 akan tetep mengeluarkan skill 2


jadi yang akan ada d script = skill yang akan d combo = (masukin id skill) dan (masukin id skill)
scill combo yang akan keluar = (masukin id skill)


smoogaaa d buaaaattt.. amiiin XD

[VX]Dhoom Script Workshop Empty2011-04-05, 12:15
PostRe: [VX]Dhoom Script Workshop
#9
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
hmmm... combo sprti di BoF 4 ya :hmm: nanti ku usahakan deh :)

btw, req pertma dah kelar...
Skill Cooldown:
Code:
#===============================================================================
#--------------------------=• Skill Cooldown •=---------------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 05 - 04 - 2011
# Battle Addon
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# This script make a skill have cooldown.
#-------------------------------------------------------------------------------
# Compatibility:
# - Tankentai Sideview Battle System
# - Wij's Battle Macros
# Note: not tested in other battle system
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#  - Insert under all Battle System Core Script
#===============================================================================

module Dhoom 
  module SkillCooldown 
   
    SHOW_COOLDOWN_NUMBER = true #true = cooldown number of skill show
                                #      at the end of skill name
   
    COOLDOWN_COLOR = []  #<----Don't delete this line
   
    #RGB Color
    COOLDOWN_COLOR[1] = 255  #Red
    COOLDOWN_COLOR[2] = 0    #Green
    COOLDOWN_COLOR[3] = 0    #Blue
    COOLDOWN_COLOR[4] = 128  #Alpha
   
    SKILL_CD = []        #<----Don't delete this line
   
    #SKILL_CD[skill id] = number of cooldown (1 is minimum number)
    SKILL_CD[1] = 1
    SKILL_CD[2] = 9
  end
end

#===============================================================================
# Start
#===============================================================================

#-------------------------------------------------------------------------------
# Window Base
#-------------------------------------------------------------------------------

class Window_Base
 
  def draw_skill_cooldown_name(item, x, y, enabled = true)
    if item != nil
      if @actor.skill_cooldown(item.id) != nil
        if @actor.skill_cooldown(item.id)!= 0
          cd_color = Color.new(Dhoom::SkillCooldown::COOLDOWN_COLOR[1],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[2],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[3],
          Dhoom::SkillCooldown::COOLDOWN_COLOR[4])
          draw_icon(item.icon_index, x, y, enabled)
          self.contents.font.color = cd_color
          if Dhoom::SkillCooldown::SHOW_COOLDOWN_NUMBER
            self.contents.draw_text(x + 24, y, 172, WLH, item.name + '(' +@actor.skill_cooldown(item.id).to_s + ')')
          else
            self.contents.draw_text(x + 24, y, 172, WLH, item.name)
          end
        else
          draw_icon(item.icon_index, x, y, enabled)
          self.contents.font.color = normal_color
          self.contents.font.color.alpha = enabled ? 255 : 128
          self.contents.draw_text(x + 24, y, 172, WLH, item.name)
        end
      else
        draw_icon(item.icon_index, x, y, enabled)
        self.contents.font.color = normal_color
        self.contents.font.color.alpha = enabled ? 255 : 128
        self.contents.draw_text(x + 24, y, 172, WLH, item.name)
      end
    end
  end
end

#-------------------------------------------------------------------------------
# Window Skill
#-------------------------------------------------------------------------------

class Window_Skill < Window_Selectable
 
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    skill = @data[index]
    if skill != nil
      rect.width -= 4
      enabled = @actor.skill_can_use?(skill)
      draw_skill_cooldown_name(skill, rect.x, rect.y, enabled)
      self.contents.draw_text(rect, @actor.calc_mp_cost(skill), 2)
    end
  end
end

#-------------------------------------------------------------------------------
# Game Actor
#-------------------------------------------------------------------------------

class Game_Actor
 
  alias dsc_actor_setup setup
  alias dsc_skill_can_use? skill_can_use?
 
  def setup(actor_id)
    dsc_actor_setup(actor_id)
    @skill_cooldown = []
  end
 
  def make_cooldown_value(id)
    @skill_cooldown[id] = Dhoom::SkillCooldown::SKILL_CD[id]
    if $imported == nil
      @skill_cooldown[id] += 1
    elsif $imported["TankentaiATB"]
      @skill_cooldown[id] -= 0
    elsif $imported["TankentaiSideview"]
      @skill_cooldown[id] += 1
    else
      @skill_cooldown[id] += 1
    end
  end
 
  def skill_cooldown(id)
    return @skill_cooldown[id]
  end
 
  def decrease_cooldown(id)
    @skill_cooldown[id] -= 1
  end
 
  def skill_can_use?(skill)
    if skill_cooldown(skill.id) != nil
      return false if skill_cooldown(skill.id) != 0
    end
    dsc_skill_can_use?(skill)
  end
end

#-------------------------------------------------------------------------------
# Scene Battle
#-------------------------------------------------------------------------------

class Scene_Battle < Scene_Base
 
  alias dsc_execute_action_skill execute_action_skill
  alias dsc_start_actor_command_selection start_actor_command_selection
 
  def execute_action_skill
    dsc_execute_action_skill
    skill = @active_battler.action.skill
    if Dhoom::SkillCooldown::SKILL_CD[skill.id] != nil
      @active_battler.make_cooldown_value(skill.id)
    end
  end
 
  def start_actor_command_selection
    dsc_start_actor_command_selection
    if @active_battler != nil and @active_battler.actor?     
      for skill in @active_battler.skills
        if @active_battler.skill_cooldown(skill.id) != nil
          if @active_battler.skill_cooldown(skill.id) != 0
            @active_battler.decrease_cooldown(skill.id)
          end
        end
      end
    elsif @commander !=nil
      for skill in @commander.skills
        if @commander.skill_cooldown(skill.id) != nil
          if @commander.skill_cooldown(skill.id) != 0
            @commander.decrease_cooldown(skill.id)
          end
        end
      end
    end
  end
end

#===============================================================================
# End
#===============================================================================
[VX]Dhoom Script Workshop Empty2011-04-05, 14:52
PostRe: [VX]Dhoom Script Workshop
Kuro Ethernite 
The Creator
Kuro Ethernite

Level 5
Posts : 1631
Thanked : 24
Engine : RMVX Ace
Skill : Masterful
Type : Jack of All Trades
Awards:

[VX]Dhoom Script Workshop Vide
:hammer:
CRAP !!!! since when ?? :hammer:
I mean, since when ganti type jadi scripter ?? :hammer:
whatever.....

owh yah :hmm: q ikutan nimbrung request jga deh ~ :thumbup:

Name : Fade Text (q ga puny sense nama yg bagus :hammer:)
Type : Text kali ?

Description :
Text yang cuma numpang muncul d screen smentara doank, abis itu ngilang :swt:
Langsung aja k contoh bayangan q.... klo manggilny, macam model kyak gni d event....
Code:
fadetext(text_id, x, y, frame)
text_id = Variable yg udah d tentuin d module script.... jdi d modul ny udah d isi bila ID var ny 1, text yg muncul "ini", klo 2 yg muncul "itu" dst, dst....
x = koor screen x munculny text
y = koor screen y munculny text
frame = brapa lama waktu text ny idle d screen.... ga trmasuk fade-in, fade-out ny......

So, mauny....
text yg muncul ada efek fade-in + fade-out ny :hmm:
durasi fade-in, fade-outny udah d tentuin d modul :hmm:
klo bisa tambahin jenis font, size, color, dll dll dsb ny :hmm:

Sekian ~ :sembah:
[VX]Dhoom Script Workshop Empty2011-04-05, 23:54
PostRe: [VX]Dhoom Script Workshop
Oscar 
Senior
Senior
Oscar

Level 5
Posts : 830
Thanked : 13
Engine : RMVX
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop Vide
@Dhoom,
wogh udah selesai :banana:
makasih banget gan , 1 cendol buat anda :D

btw, buat durability petunjuk yang diatas kurang pas keknya. Itu hanya untuk 1 orang saja, lha kalo ada 4 orang dlm party bawa senjata yang sama jadi agak susah tuh bikin indeksnya :hmm: , so... pending dulu aja yang ini yaw? ;)
[VX]Dhoom Script Workshop Empty2011-04-06, 00:11
PostRe: [VX]Dhoom Script Workshop
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
@kuro: since kmren2 :hammer: itu text ny muncul d map atau lainny? dtmpung dlu dh XD @oscar: yg itu bkn cuman dbgi 4 az... tp stiap item hrus dpsh, klo g y ngeshare variable... dan untuk saat ini aq blum nemu gmn cara misahny... :swt: pdhl klo cmn bwt satu item dh klar ini
[VX]Dhoom Script Workshop Empty2011-04-06, 10:01
PostRe: [VX]Dhoom Script Workshop
Oscar 
Senior
Senior
Oscar

Level 5
Posts : 830
Thanked : 13
Engine : RMVX
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop Vide
@dhoom,

kenapa harus dipisah? apakah maksudnya jika kita punya pedang yang jenisnya sama berjumlah 10 biji kita harus bikin variabel 10 biji, begitu kah? ... kalo begitu berarti situ masih belum paham maksud gw :hmm:. Kalo bukan berarti gw yang bego ga mudeng maksud situ :hammer:

nda usah mikir seperti itu, pokoknya setiap nilai dura (XXX) habis dikurangin aja jumlah item yang sedang dibawa. alias decrease item kalo di event. Jadi ngga perlu mikir item lain dengan jenis sama.

kalo maksudnya tiap item adalah jenisnya bukanya make array aja misahnya?, wa lom tau sih inisialisasi array di Ruby. misal Item[Y] = XXX.
jika item ada 4 jenis berarti:

item[1] = 100
item[2] = 200
item[3] = 300
...
item[Y] = XXX

bukannya begitu yaw? :hmm: , tapi itu cuman untuk 1 orang. Kalo buat 4 atau lebih party harus ada variabel lagi XD. Misal => actor[1].item[2] = XXX. <== dan penghitungan durabilitynya aktif hanya jika itemnya di equip oleh orang tsb.

next clue: harus bikin fungsi pencarian array item yang di-equip. :hmm:

tapi kalo kesusahan ya gpp dah, lain kali aja... ;)
[VX]Dhoom Script Workshop Empty2011-04-06, 10:30
PostRe: [VX]Dhoom Script Workshop
richter_h 
Salto Master
Hancip RMID
richter_h

Kosong
Posts : 1705
Thanked : 30
Engine : Other
Skill : Skilled
Type : Developer
Awards:

[VX]Dhoom Script Workshop Vide
:sembah: :sembah:
ada skill cooldown :hmm: comot-able nih... :kabur:

btw nice share gan! :hwave:

nanti kalo mo request ke mister kiamat aja ah... soale males bikin script :D :D =))
[VX]Dhoom Script Workshop Empty2011-04-06, 11:28
PostRe: [VX]Dhoom Script Workshop
hart 
Senior
Senior
avatar

Level 5
Posts : 805
Thanked : 38
Engine : Other
Skill : Very Beginner
Type : Developer

[VX]Dhoom Script Workshop Vide
@om dhoom dan om kuro: WADUH, SAYA BENAR2 MINTA MAAF :sembah::sembah::sembah::sembah:i... tadi saya nganggur, tanpa sadar saya malah ngerjain requestnya om kuro :doh: Maaf om dhoom :sembah: kalau om mau bikin lagi aja pasti lebih bagus dan rapi :sembah:

Code:

#===============================================================================
# * Fading Text
#-------------------------------------------------------------------------------
# Cara pakai:
# - Panggil via event script:
#  $game_map.fadetext(text, x, y, delay) atau
#  $game_map.fadetext(text, x, y, delay, color, font, size, bold,
#                      italic, shadow)
#-------------------------------------------------------------------------------
# - text  = text yang akan ditampilkan
# - x      = posisi x dari text yang akan ditampilkan
# - y      = posisi y dari text yang akan ditampilkan
# - delay  = berapa lama(frame) text akan ada di layar
# - color  = warna text
# - font  = jenis font
# - size  = ukuran text
# - bold  = cetak tebal
# - italic = cetak miring
# - shadow = kurang tau
#-------------------------------------------------------------------------------
# Contoh:
# - $game_map.fadetext("heheheh", 300, 100, 600)
# - $game_map.fadetext("hehehe", 200,
#                    100, 200, Color.new(255, 0, 255),
#                    "Verdana", 64, true, true, true)
#===============================================================================
class FadingText
  attr_reader :count
  attr_reader :delay
  attr_reader :sprite
 
  def initialize(text, x, y, delay, color = Color.new(255, 255, 255),
                font = "Arial", size = 32, bold = false, italic = false,
                shadow = false)
    @sprite = Sprite.new
    @text = text
    @delay = delay
    @sprite.x = x
    @sprite.y = y
    @sprite.z = 50
    @sprite.opacity = 0
    @sprite.bitmap = Bitmap.new(544, 416)
    @sprite.bitmap.font.name = font
    @sprite.bitmap.font.size = size
    @sprite.bitmap.font.color = color
    @sprite.bitmap.font.bold = bold
    @sprite.bitmap.font.italic = italic
    @sprite.bitmap.font.shadow = shadow
    @sprite.bitmap.draw_text(0, 0, 544, @sprite.bitmap.font.size, text)
    @count = 0
    @sprite.visible = true
  end
 
  def update
    if @count < @delay / 3
      @sprite.opacity += 255 / (@delay / 3)
    elsif @count < @delay / 3 * 2
    elsif @count < @delay
      @sprite.opacity -= 255 / (@delay / 3)
    end
    @count += 1
  end
end

class FadingText_Manager
  def initialize
    @fadingtext = []
  end
 
  def add(fadingtext)
    @fadingtext.push(fadingtext)
  end
 
  def update
    for i in 0 ... @fadingtext.size
      next if @fadingtext[i] == nil
      @fadingtext[i].update
      if @fadingtext[i].count == @fadingtext[i].delay
        @fadingtext[i].sprite.dispose
        @fadingtext.delete_at(i)
      end
    end
  end
end

class Scene_Map < Scene_Base
  alias anu_update update
  def update
    anu_update
    $game_map.fadingtext.update
  end
end

class Game_Map
  attr_reader :fadingtext
 
  alias anu_initialize initialize
  def initialize
    anu_initialize
    @fadingtext = FadingText_Manager.new
  end
 
  def fadetext(text, x, y, delay, color = Color.new(255, 255, 255),
                font = "Arial", size = 32, bold = false, italic = false,
                shadow = false)
    @fadingtext.add(FadingText.new(text, x, y, delay, color, font, size, bold,
                                  italic, shadow))
  end
end
#===============================================================================

Cara pakai ada di scriptnya :sembah:
[VX]Dhoom Script Workshop Empty2011-04-06, 11:43
PostRe: [VX]Dhoom Script Workshop
bungatepijalan 
Moe Princess
bungatepijalan

Level 5
Posts : 1487
Thanked : 30
Engine : Multi-Engine User
Skill : Intermediate
Type : Developer
Awards:
[VX]Dhoom Script Workshop Vide
Ada yg lupa dariku :hammer: :kabur:
Scriptku yg di: https://rmid.forumotion.net/t3610-spritefont-text-generator-wip
Code:
#==============================================================================
# Spritefont Text Generator (WIP)
# Version 1.01
#==============================================================================
# Copyrighted by Bunga Tepi Jalan.
#  * Don't forget to credit me if you want to use this work
#  * You are free to Share - to copy, distribute and transmit the work
#  * You are free to Remix - to adapt the work
#  * You may not use this work for commercial purposes
#
#==============================================================================
# Information:
#  This script enables you to draw text using a sprite, called spritefont,
#  without having to use fonts installed on your computer.
#
# Usage Notes
#  - Place spritefont files at location as configured in this script.
#  - Each spritefont file contains 16x9 character tiles, so its width and
#    height must be divisible by 16 and 9, respectively (e.g. 144x108).
#  - Character tiles are ordered by ASCII code of the characters,
#    beginning from code 33 to 176.
#  - Don't forget to call update method after changing the text position.
#  - Don't forget also to call dispose method in the end of current scene.
#
# If you find any bugs or you have any suggestions, please report them via
# e-mail (listra92@gmail.com), or either my blog or these forums:
#  - http://bungatepijalan.wordpress.com
#  - http://rmid.forumotion.net
#==============================================================================

module Spritefonts
  #--------------------------------------------------------------------------
  # * Spritefont Text Generator Configuration
  #--------------------------------------------------------------------------
  # Location of spritefont files to be used
  SF_PATH = "Graphics/Pictures/spritefonts/"
 
  #==============================================================================
  # ** SFText
  #------------------------------------------------------------------------------
  #  An instance of this class represents a text drawn on the screen. Use
  #  Spritefonts::SFText.new(...) to create a new one.
  #==============================================================================
  class SFText
    #--------------------------------------------------------------------------
    # * Public Instance Variables
    #--------------------------------------------------------------------------
    attr_accessor :x
    attr_accessor :y
    attr_reader :text
    attr_reader :align
    #--------------------------------------------------------------------------
    # * Object Initialization
    #    sfname  : spritefont file name (without path)
    #    _text  : text string
    #    _x, _y  : position of text
    #    _align  : text alignment (0: left, 1: center, 2: right)
    #--------------------------------------------------------------------------
    def initialize(sfname, _text, _x = 0, _y = 0, _align = 0)
      @x = _x
      @y = _y
      @text = _text
      @align = _align
      @sfb = Bitmap.new(SF_PATH+sfname)
      @chars = Array.new
      update
    end
    #--------------------------------------------------------------------------
    # * Change Text
    #    _text  : new text string
    #--------------------------------------------------------------------------
    def change_text(_text)
      @text = _text
      update
    end
    #--------------------------------------------------------------------------
    # * Change Align
    #    _align  : text alignment (0: left, 1: center, 2: right)
    #--------------------------------------------------------------------------
    def change_align(_align)
      @align = _align
      update
    end
    #--------------------------------------------------------------------------
    # * Update Text Display
    #--------------------------------------------------------------------------
    def update
      cw = @sfb.rect.width/16
      ch = @sfb.rect.height/9
      if @chars.length != 0
        dispose
        @chars = Array.new
      end
      for i in 0..@text.length-1
        @chars.push(Sprite.new(Viewport.new(x+cw*i, y, cw, ch)))
        @chars[i].bitmap = @sfb
        @chars[i].x = -((@text[i]-1)%16)*cw
        @chars[i].y = -((@text[i]-1)/16-2)*ch
        if @align == 1
          @chars[i].viewport.rect.x -= cw*@text.length/2
        elsif @align == 2
          @chars[i].viewport.rect.x -= cw*@text.length
        end
      end
    end
    #--------------------------------------------------------------------------
    # * Dispose
    #--------------------------------------------------------------------------
    def dispose
      for i in 0..@chars.length-1
        @chars[i].dispose
      end
    end
  end
end
Jangan sangka ini buat XP, di VX jg bisa koq, jd apa salahnya :kabur:
Dan.. scriptnya msh tergolong sederhana :kabur:
Utk cara pakenya, liat di tridnya

Bole khan!? :D :kabur:
[VX]Dhoom Script Workshop Empty2011-04-06, 11:48
PostRe: [VX]Dhoom Script Workshop
richter_h 
Salto Master
Hancip RMID
richter_h

Kosong
Posts : 1705
Thanked : 30
Engine : Other
Skill : Skilled
Type : Developer
Awards:

[VX]Dhoom Script Workshop Vide
@btj mancap tuh... comot ah :kabur:

sedang ane saja skrip blom ada...
dan untungnya tuning skrip udah! post ah... :kabur:
[VX]Dhoom Script Workshop Empty2011-04-06, 13:17
PostRe: [VX]Dhoom Script Workshop
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
@oscar: y : id item kan? klau bgt misal ad dua pdang x, yg stu d equip sdngkn stu ny d invntri... klau dura pdng yg d equip d krngin yg d invntri jg ikt brkrng... jd dura ny sprt glbal... mngkn bgtu... @btj: yah gpp deh :hammer: @rich: slhkan bang
[VX]Dhoom Script Workshop Empty2011-04-06, 14:08
PostRe: [VX]Dhoom Script Workshop
fly-man 
Poison Elemental
Anak Cantik
fly-man

Level 5
Posts : 917
Thanked : 11
Engine : RMVX
Skill : Beginner
Type : Artist
Awards:

[VX]Dhoom Script Workshop Vide
om Dhoom.. yang skill combo BoF 4 kabar gimna???? huahhahahaahha
[VX]Dhoom Script Workshop Empty2011-04-06, 15:34
PostRe: [VX]Dhoom Script Workshop
Kuro Ethernite 
The Creator
Kuro Ethernite

Level 5
Posts : 1631
Thanked : 24
Engine : RMVX Ace
Skill : Masterful
Type : Jack of All Trades
Awards:

[VX]Dhoom Script Workshop Vide
=)) =))
yay, udah d selesaiin :banana:

uhm... ngerjain tanpa sadar ??? :ngacay:
spertiny salah satu kmampuan q memikat user lain kluar bgtu aja ~ :hammer: :hammer:
[VX]Dhoom Script Workshop Empty2011-04-06, 20:17
PostRe: [VX]Dhoom Script Workshop
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
@fly: sbr bang... brhbng blum ad kpstian dri seintz jd q kkrjkn req mu dlu
[VX]Dhoom Script Workshop Empty2011-04-06, 20:59
PostRe: [VX]Dhoom Script Workshop
fly-man 
Poison Elemental
Anak Cantik
fly-man

Level 5
Posts : 917
Thanked : 11
Engine : RMVX
Skill : Beginner
Type : Artist
Awards:

[VX]Dhoom Script Workshop Vide
ok d kk Dhoom.. hihihi.. :sembah: makasiiii XD
[VX]Dhoom Script Workshop Empty2011-04-06, 21:33
PostRe: [VX]Dhoom Script Workshop
Oscar 
Senior
Senior
Oscar

Level 5
Posts : 830
Thanked : 13
Engine : RMVX
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop Vide
DrDhoom wrote:

@oscar: y : id item kan? klau bgt misal ad dua pdang x, yg stu d equip sdngkn stu ny d invntri... klau dura pdng yg d equip d krngin yg d invntri jg ikt brkrng... jd dura ny sprt glbal... mngkn bgtu..
yap tepat sekali kk :thumbup:, ya seperti ini yang wa maksud. Dan jika dura habis dan di iventory udah 0 , maka force equip pada pedang yang sudah diequip ;) , begitulah :D

anyway dont bother,
kerjakan rikues lain yang kiranya lebih mudah dulu aja ;)
[VX]Dhoom Script Workshop Empty2011-04-06, 21:39
PostRe: [VX]Dhoom Script Workshop
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
@Fly: udah kelar nih... tpi cuman buat BS biasa
Code:
#===============================================================================
#----------------------=• Easy Skill Combo Script •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.0
# Date Published: 06 - 04 - 2011
# Battle Addon
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Introduction:
# Make a combo skill.
#-------------------------------------------------------------------------------
# Compatibility:
# - Didn't work with Tankentai Sideview Battle System
# Note: not tested in other battle system
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module Dhoom 
  module SkillCombo
   
    COMBO_TEXT = "COMBO!!!" #The shown text if combo skill triggered
   
    FIRST_SKILL = []  #<----Don't delete this line
    SECOND_SKILL = []  #<----Don't delete this line
    COMBO_SKILL = []  #<----Don't delete this line
   
    #FIRST/SECOND/COMBO_SKILL[combo id] = skill id
    FIRST_SKILL[1] = 1
    SECOND_SKILL[1] = 2
    COMBO_SKILL[1] = 3
   
    FIRST_SKILL[2] = 41
    SECOND_SKILL[2] = 8
    COMBO_SKILL[2] = 6
   
  end
end

#===============================================================================
# Start
#===============================================================================

$imported = {} if $imported == nil
$imported["DSkillCombo"] = true

#-------------------------------------------------------------------------------
# Scene Battle
#-------------------------------------------------------------------------------

class Scene_Battle < Scene_Base
  def execute_action_skill
    if @ex_active_battler == 0 or @ex_active_battler == nil
      @ex_active_battler = @active_battler
    end
    if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
      i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
      @first_skill = []
      @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
      skill = @active_battler.action.skill
      text = @active_battler.name + skill.message1
      @message_window.add_instant_text(text)
    elsif Dhoom::SkillCombo::SECOND_SKILL.include?(@active_battler.action.skill.id)
      i = Dhoom::SkillCombo::SECOND_SKILL.index(@active_battler.action.skill.id)
      if @first_skill != nil
        if Dhoom::SkillCombo::FIRST_SKILL[i] == @first_skill[i]
          @first_skill = []
          @active_battler.action.set_skill(Dhoom::SkillCombo::COMBO_SKILL[i])
          skill = @active_battler.action.skill
          text = Dhoom::SkillCombo::COMBO_TEXT + ' ' + skill.name + '!'
          text2 = @active_battler.name + skill.message1
          @message_window.add_instant_text(text)
          wait(10)
          @message_window.add_instant_text(text2)
        else
          @first_skill = []
          @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
          skill = @active_battler.action.skill
          text = @active_battler.name + skill.message1
          @message_window.add_instant_text(text)
        end
      else
        @first_skill = []
        @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
        skill = @active_battler.action.skill
        text = @active_battler.name + skill.message1
        @message_window.add_instant_text(text)
      end 
    end
    unless skill.message2.empty?
      wait(10)
      @message_window.add_instant_text(skill.message2)
    end
    targets = @active_battler.action.make_targets
    display_animation(targets, skill.animation_id)
    @active_battler.mp -= @active_battler.calc_mp_cost(skill)
    $game_temp.common_event_id = skill.common_event_id
    for target in targets
      target.skill_effect(@active_battler, skill)
      display_action_effects(target, skill)
    end
  end
end

#===============================================================================
# End
#===============================================================================

@Oscar: Siiip XD
[VX]Dhoom Script Workshop Empty2011-04-07, 11:36
PostRe: [VX]Dhoom Script Workshop
DrDhoom 
Doomed Zombie
DrDhoom

Level 5
Posts : 629
Thanked : 22
Engine : Multi-Engine User
Skill : Intermediate
Type : Scripter

[VX]Dhoom Script Workshop Vide
Update ESCS. Sekarang sudah compatible sama Tankentai.
Code:
#===============================================================================
#----------------------=• Easy Skill Combo Script •=----------------------------
#---------------------------=• by: DrDhoom •=-----------------------------------
# Version: 1.1
# Date Published: 07 - 04 - 2011
# Battle Addon
# RPGMakerID Community
#-------------------------------------------------------------------------------
# Changelog:
# V:1.1 - Make compatible with Tankentai SBS and Add combo chain.
#-------------------------------------------------------------------------------
# Introduction:
# Make a combo skill.
#-------------------------------------------------------------------------------
# Compatibility:
# - Tankentai Sideview Battle System
# Note: not tested in other battle system
#-------------------------------------------------------------------------------
# How to use:
#  - Insert this script above Main 
#===============================================================================

module Dhoom 
  module SkillCombo
   
    COMBO_TEXT = "COMBO!!!" #The shown text if combo skill triggered.
                            #Leave empty like "", if you don't want it appear.
   
    FIRST_SKILL = []  #<----Don't delete this line
    SECOND_SKILL = []  #<----Don't delete this line
    COMBO_SKILL = []  #<----Don't delete this line
   
    #FIRST/SECOND/COMBO_SKILL[combo id] = skill id
    FIRST_SKILL[1] = 1
    SECOND_SKILL[1] = 2
    COMBO_SKILL[1] = 3 #--
                      # | Combo Chain
    FIRST_SKILL[2] = 3 #--
    SECOND_SKILL[2] = 41
    COMBO_SKILL[2] = 6
   
  end
end

#===============================================================================
# Start
#===============================================================================

$imported = {} if $imported == nil
$imported["DSkillCombo"] = true

#-------------------------------------------------------------------------------
# Scene Battle
#-------------------------------------------------------------------------------

class Scene_Battle < Scene_Base
 
  alias dsco_execute_action_attack execute_action_attack
  alias dsco_execute_action_guard execute_action_guard
  alias dsco_execute_action_item execute_action_item
 
  if $imported["TankentaiATB"] == nil
   
    alias dsco_turn_end turn_end
   
    def turn_end
      dsco_turn_end
      @first_skill = []
    end
  end
 
  def execute_action_guard
    dsco_execute_action_guard
    @first_skill = []
  end
 
  def execute_action_item
    dsco_execute_action_item
    @first_skill = []
  end
 
  def execute_action_attack
    dsco_execute_action_attack
    @first_skill = []
  end
 
  if $imported["TankentaiSideview"]
   
    def pop_help(obj)
      return if obj.extension.include?("HELPHIDE")
      @help_window = Window_Help.new if @help_window == nil
      if obj.is_a?(RPG::Skill)
        if @combo
          @help_window.set_text(Dhoom::SkillCombo::COMBO_TEXT + ' ' + obj.name + '!', 1)
        else
          @help_window.set_text(obj.name, 1)
        end
      else
        @help_window.set_text(obj.name, 1)
      end
      @help_window.visible = true
    end
   
    def execute_action_skill
      if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
        @first_skill = []
        @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
        @combo = false
      elsif Dhoom::SkillCombo::SECOND_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::SECOND_SKILL.index(@active_battler.action.skill.id)
        if @first_skill != nil
          if Dhoom::SkillCombo::FIRST_SKILL[i] == @first_skill[i]
            @first_skill = []
            @active_battler.action.set_skill(Dhoom::SkillCombo::COMBO_SKILL[i])
            if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
              i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
              @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            end
            @combo = true
          else
            @first_skill = []
            @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            @combo = false
          end
        else
          @first_skill = []
          @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
          @combo = false
        end
      end
      skill = @active_battler.action.skill
      return unless @active_battler.action.valid? # 3.3d, Force action bug fix
      if skill.plus_state_set.include?(1)
        for member in $game_party.members + $game_troop.members
          next if member.immortal
          next if member.dead?
          member.dying = true
        end
      else
        immortaling
      end
      target_decision(skill)
      @spriteset.set_action(@active_battler.actor?, @active_battler.index, skill.base_action)
      pop_help(skill)
      playing_action
      @active_battler.mp -= @active_battler.calc_mp_cost(skill)
      @status_window.refresh
      $game_temp.common_event_id = skill.common_event_id
    end
   
  else
   
    def execute_action_skill
      if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
        @first_skill = []
        @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
        skill = @active_battler.action.skill
        text = @active_battler.name + skill.message1
        @message_window.add_instant_text(text)
      elsif Dhoom::SkillCombo::SECOND_SKILL.include?(@active_battler.action.skill.id)
        i = Dhoom::SkillCombo::SECOND_SKILL.index(@active_battler.action.skill.id)
        if @first_skill != nil
          if Dhoom::SkillCombo::FIRST_SKILL[i] == @first_skill[i]
            @first_skill = []
            @active_battler.action.set_skill(Dhoom::SkillCombo::COMBO_SKILL[i])
            if Dhoom::SkillCombo::FIRST_SKILL.include?(@active_battler.action.skill.id)
              i = Dhoom::SkillCombo::FIRST_SKILL.index(@active_battler.action.skill.id)
              @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            end
            skill = @active_battler.action.skill
            text = Dhoom::SkillCombo::COMBO_TEXT + ' ' + skill.name + '!'
            text2 = @active_battler.name + skill.message1
            @message_window.add_instant_text(text)
            wait(10)
            @message_window.add_instant_text(text2)
          else
            @first_skill = []
            @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
            skill = @active_battler.action.skill
            text = @active_battler.name + skill.message1
            @message_window.add_instant_text(text)
          end
        else
          @first_skill = []
          @first_skill[i] = Dhoom::SkillCombo::FIRST_SKILL[i]
          skill = @active_battler.action.skill
          text = @active_battler.name + skill.message1
          @message_window.add_instant_text(text)
        end 
      end
      unless skill.message2.empty?
        wait(10)
        @message_window.add_instant_text(skill.message2)
      end
      targets = @active_battler.action.make_targets
      display_animation(targets, skill.animation_id)
      @active_battler.mp -= @active_battler.calc_mp_cost(skill)
      $game_temp.common_event_id = skill.common_event_id
      for target in targets
        target.skill_effect(@active_battler, skill)
        display_action_effects(target, skill)
      end
    end
  end
end

#===============================================================================
# End
#===============================================================================
[VX]Dhoom Script Workshop Empty
PostRe: [VX]Dhoom Script Workshop
Sponsored content 




[VX]Dhoom Script Workshop Vide
 

[VX]Dhoom Script Workshop

Topik sebelumnya Topik selanjutnya Kembali Ke Atas 

Similar topics

+
Halaman 1 dari 4Pilih halaman : 1, 2, 3, 4  Next

Permissions in this forum:Anda tidak dapat menjawab topik
RPGMakerID :: Scripts & Event Systems :: RMVX Scripts :: RGSS2 Request-