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 : Previous  1, 2, 3, 4  Next
[VX]Dhoom Script Workshop - Page 3 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 - Page 3 Vide
First topic message reminder :

[VX]Dhoom Script Workshop - Page 3 Dhoom_ws
[VX]Dhoom Script Workshop - Page 3 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 - Page 3 Accept_req
sekarang tergantung level script nya :hammer: lebih mudah lebih cepat

[VX]Dhoom Script Workshop - Page 3 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 - Page 3 Credit


Terakhir diubah oleh DrDhoom tanggal 2012-09-18, 13:39, total 18 kali diubah

[VX]Dhoom Script Workshop - Page 3 Empty2011-05-13, 22:22
PostRe: [VX]Dhoom Script Workshop
Ridho96 
Newbie
Newbie


Posts : 7

[VX]Dhoom Script Workshop - Page 3 Vide
Script bagus gan...
ane bisa request gak? :thumbup
bisa buatin Script HUD buat Character Bar saat battle brubah gtu?
tq...:D
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-13, 22:29
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 - Page 3 Vide
g gitu ngerti... bsa lbih jelas lg ga?
pke image sklian klo ada :hammer:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-14, 20:54
PostRe: [VX]Dhoom Script Workshop
RidhoVX 
Newbie
Newbie
RidhoVX

Level 5
Posts : 34
Thanked : 0
Engine : RMVX
Skill : Beginner
Type : Artist

[VX]Dhoom Script Workshop - Page 3 Vide
Agan DrDhoom,
ane mau request Script...:D

1. CustomHUD
2. Custom HUD pada Character saat battle,
Battle Sys ane, Tankentai SBS.

Mohon Bantuannya :sembah:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-14, 23:33
PostRe: [VX]Dhoom Script Workshop
shikami 
Member 1000 Konsep
avatar

Level 5
Posts : 3744
Thanked : 31
Engine : Multi-Engine User
Skill : Beginner
Type : Developer
Awards:


[VX]Dhoom Script Workshop - Page 3 Vide
Quote :
Agan DrDhoom,
ane mau request Script...:D

1. CustomHUD
2. Custom HUD pada Character saat battle,
Battle Sys ane, Tankentai SBS.

Mohon Bantuannya :sembah:


err ini ga dibaca ?

Quote :
pke image sklian klo ada :hammer:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-15, 01:33
PostRe: [VX]Dhoom Script Workshop
RidhoVX 
Newbie
Newbie
RidhoVX

Level 5
Posts : 34
Thanked : 0
Engine : RMVX
Skill : Beginner
Type : Artist

[VX]Dhoom Script Workshop - Page 3 Vide
Dari Battle System yang ada di sini...
https://rmid.forumotion.net/t3779-battle-system?highlight=Battle+System

Mohon Bantuannya...:sembah:

Biar lebih jelas...
yang ini...
[VX]Dhoom Script Workshop - Page 3 Ss01w
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-16, 08:32
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 - Page 3 Vide
cuma yg hud bawah kan? pertama pling ngga sediain gambar untuk hud nya... i'm here as scripter... not designer...
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-17, 08:57
PostRe: [VX]Dhoom Script Workshop
Irsyad 
Newbie
Newbie
Irsyad

Level 5
Posts : 67
Thanked : 0
Engine : Multi-Engine User
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop - Page 3 Vide
Nama Script : Hunting Level
Deskripsi script : membuat level untuk berburu, maksud'a setiap ngalahin 1 monster exp huntingnya meningkat
n setiap level huntingnya meningkat,,,bisa beli senjata hunting :)

udah segitu aja kok...gx ush panjang2 ,,, :D
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-17, 13:51
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 - Page 3 Vide
Yo !!!! XD
it's been a while ~ :banana:
Just request sesuatu yg sangat keterlaluan simpel, yg kyakny CMIIW blom prnah d buat sama skali, yg sjak dulu pingin q buat ndiri tpi fail mulu, pdahal q pikir cuma tinggal prlu ngubah 1 line doank d editor :swt: :hammer:

Script Name: In a Debt
Description : Gold bisa "minus" (negatif / below 0 G) .... :swt:
Optional : Pake font merah untuk tulisan di Window Gold kalo uangny negatif ..... :swt:

Spoiler:

SARAN : mending d first post ubah deh.... soal..... :swt:
>>> Skill Cooldown by Oscar <<<
"by" ny d ganti dgan "for" :thumbup: u know whta I mean ~ :banana:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-17, 14:45
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 - Page 3 Vide
@irsyad: pake event jg bs tuh... ok nnti tak buatin...

@kuro: ok2... q ubh jg yg itu

edit:

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

for kuro
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
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-17, 19:48
PostRe: [VX]Dhoom Script Workshop
Irsyad 
Newbie
Newbie
Irsyad

Level 5
Posts : 67
Thanked : 0
Engine : Multi-Engine User
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop - Page 3 Vide
DrDhoom wrote:
@irsyad: pake event jg bs tuh... ok nnti tak buatin...

@kuro: ok2... q ubh jg yg itu

edit:

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

for kuro
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

thx kk, ane coba dulu....btw,respon'a cepet banget :D
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-18, 09:20
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 - Page 3 Vide
As I thought !!! =)) yg d rubah 1 line doank ~ =))
Masalahny q cuma kemalesan nyari doank :hammer:
Nice :thumbup: Thanks ~ But perasaan q namain In a Debt deh :hammer:

@Irsyad
of course cepet ~ :- Dia kan seorang Dhoom ~ :- (apa hubungan ny ?? :hammer:)

Awh~ next :banana: yg blom prnah ada yg buat CMIIW :banana:

  • Script Name
    Varied Monster Status
  • Description
    Status monster ketika battle di "varied" kan :thumbup: jadi seenggakny klo nglawan 4 Slime, masing2 slime status ny beda2 :hmm: how could I put it ?? :swt: Kyak gini dah contohny.....
    Code:
     VARIED = 10 # <<< nilai varied yg d masukin....
    Rand(-VARIED...VARIED) # <<< Nilai random dari -10...10
    # Tiap Monster "saat battle", ga peduli monsterny kembar, original status ny d varied kan....
    HP += (VARIED * 10)
    MP += (VARIED * 5)
    ATK += VARIED
    DEF += VARIED
    SPI += VARIED
    AGI += VARIED


Seharusny bisa ngerti klo q jelasin kyak gtu :ngacay: thanks ~ :thumbup:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-18, 13:31
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 - Page 3 Vide
@irsyad: udh djwb kuro :hammer:

@kuro:dgnti dkit gpp donk :- ok kuushkn...
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-19, 13:35
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 - Page 3 Vide
@kuro: nih
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

tpi nilai ny g bisa minus... walaupun minus ttep jdi positif :swt:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-20, 13:28
PostRe: [VX]Dhoom Script Workshop
Irsyad 
Newbie
Newbie
Irsyad

Level 5
Posts : 67
Thanked : 0
Engine : Multi-Engine User
Skill : Beginner
Type : Writer

[VX]Dhoom Script Workshop - Page 3 Vide
Kuro Creator wrote:
As I thought !!! =)) yg d rubah 1 line doank ~ =))
Masalahny q cuma kemalesan nyari doank :hammer:
Nice :thumbup: Thanks ~ But perasaan q namain In a Debt deh :hammer:

@Irsyad
of course cepet ~ :- Dia kan seorang Dhoom ~ :- (apa hubungan ny ?? :hammer:)

Awh~ next :banana: yg blom prnah ada yg buat CMIIW :banana:

  • Script Name
    Varied Monster Status
  • Description
    Status monster ketika battle di "varied" kan :thumbup: jadi seenggakny klo nglawan 4 Slime, masing2 slime status ny beda2 :hmm: how could I put it ?? :swt: Kyak gini dah contohny.....
    Code:
     VARIED = 10 # <<< nilai varied yg d masukin....
    Rand(-VARIED...VARIED) # <<< Nilai random dari -10...10
    # Tiap Monster "saat battle", ga peduli monsterny kembar, original status ny d varied kan....
    HP += (VARIED * 10)
    MP += (VARIED * 5)
    ATK += VARIED
    DEF += VARIED
    SPI += VARIED
    AGI += VARIED


Seharusny bisa ngerti klo q jelasin kyak gtu :ngacay: thanks ~ :thumbup:

hmmmm...boleh juga tuh
:D
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-20, 19:44
PostRe: [VX]Dhoom Script Workshop
ashm 
Veteran
Veteran
ashm

Level 5
Posts : 1131
Thanked : 8
Engine : RMVX Ace
Skill : Intermediate
Type : Event Designer
Awards:

[VX]Dhoom Script Workshop - Page 3 Vide
Hmm Prof. Dhoom
Aku perjelas spesifikasi nya deh :

Nama : custom refine

Deskripsi : bisa mengcombine bbrp item menjadi 1 item dgn ada kemungkinan succes rate, tapi dgn sarat

* Kalo Tipe item adalah Item (maksud na tab item) Maka, combine biasa, dgn chance biasa.
* kalo tipe Item adalah Equip ato weapon, maka ada levelnya (berhasil di refine, jadi sukses. kalo gagal ya ancurin aja)

Truss kalo bisa di modul nya dipisah begini

Shop [1] = [1,2,3]
Shop [2] = [1,4,5,6,7]

dgn Shop [1] Maksud nya shop tipe 1, jadi ntr di map, di call nya begini. $scene.Map = shop[1] <<< teuing bner atau salah =))

Nah trus yg array kedua [1,2,3]

Maksudnya ID di module yg isinya formula refine. Contoh

1 => (a,b,c,d,e)
a : tipe yg mau dimasukin 1: item, 2: equip 3: weapon
b : Bahan resep nya
c : Chance
d : allow lost item if failed (boolean)
e. Price

Oh ia, di equip, ama weapon tab, ada note tag nya. Max lv

Tujuan dipisah begini biar 1 script ini bisa dipakai bermacam2 tujuan. bisa sintesis, cooking, atau ada user lain yg lebih kreatif. Gmn Prof. Dhoom ? :D



Oot : ashm liat ke atas :senyum:
Ternyata request ashm yg paling susah ya :shocked:
Yaaa tolong deh Prof. Dhoom :thumbup:

(disebut Prof. bcoz, gelar prof gk perlu S3 utk dapetin,
sedangkan gelas Dr. Perlu S3) <<< Sok tau amit nih ashm
:kabur: :kabur: :kabur:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-20, 23:48
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 - Page 3 Vide
@ash: hoalah pke prof sgla =)) ok tak ushain dlu...
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-21, 10:07
PostRe: [VX]Dhoom Script Workshop
LiTTleDRAgo 
Senior
Senior
LiTTleDRAgo

Level 5
Posts : 712
Thanked : 27
Engine : RMXP
Skill : Skilled
Type : Scripter
Awards:
[VX]Dhoom Script Workshop - Page 3 Vide
gw request buat vx lagi yah ^^

yg gw request itu self variable

tapi self variablenya ini beda ama yg punya kk rei
jadi setiap "Self-Switch" di event punya "Self Variable" sendiri-sendiri
mungkin lebih cocok dinamain Self Switch Variable? :D

kalo bisa cara penggunaannya kyk gini

$game_self_switchvariable[[$game_map.map_id , @event_id, "A"]] = 14
$game_variables[16] = $game_self_switchvariable[[1 , 4, "A"]] + $game_self_switchvariable[[1 , 4, "C"]]

----(yg ini ga harus)----
kalo bisa skripnya cross engine sama ga bikin corrupt old savegames ^^
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-24, 10:30
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 - Page 3 Vide
@drago: bneran g ngerti... bsa jlsin lbih detil? :hammer:
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-24, 15:42
PostRe: [VX]Dhoom Script Workshop
KID_VX 
Senior
Senior
KID_VX

Level 5
Posts : 959
Thanked : 24
Engine : Multi-Engine User
Skill : Very Beginner
Type : Developer

[VX]Dhoom Script Workshop - Page 3 Vide
Mungkin maksud bang Drago itu kyak command eent nya "Call Event" yang ada di rm2k3 dan rm2k.
fungsinya kyak self switch dari rmvx,
tapi bedanya, kalo self switch , hanya bisa memanggil event pada tab di dalam event id yang sama dan map id yang sama dengan maksimal ent yang di panggil hanya 4
nah kalo Call Event, bukan hanya bisa memanggil event pada page event id yang sama saja, tapi juga pada event id yang berbeda dan map id yang berbeda

CMIIW 8)

kalo memang beneran yag di maksud seperti itu, udah ada penyelesayannya , maybe :-
namanya scriptnya "worale's call event script", ini buatan bang woratana :hmm: ,
Soal yang ini >>> [[$game_map.map_id , @event_id, "A"]] " <<< A disini mungkin maksudnya id nya kan :hmm:, dengan script"worale's call event script"<<< daku rasa hal tersebut udah terpebuhi, soalnya di script nya bang wora, itu sangat percis sama "call Event" nya m2k3 , jadi bisa manggil suatu event dari , spesifikasi map id, vent id dan page id :)

Enjoy 8)
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-24, 18:42
PostRe: [VX]Dhoom Script Workshop
LiTTleDRAgo 
Senior
Senior
LiTTleDRAgo

Level 5
Posts : 712
Thanked : 27
Engine : RMXP
Skill : Skilled
Type : Scripter
Awards:
[VX]Dhoom Script Workshop - Page 3 Vide
call event sih uda bisa daridulu, yawdah reqnya di cancel aja deh, kegampangan uda kesolved sendiri ^^

gw request yg lain yah...

skrip yang bisa merubah warna tulisan nama actor, classes, nama senjata, nama armor, nama item, nama enemies jadi warna sesuka kita

jadi pas kita ketik

Halo \a[1]

nanti keluarnya

Halo Ralph

warnanya bisa kita configure sendiri-sendiri berdasarkan ID dari actor, item, dsb di skrip
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-24, 19:20
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 - Page 3 Vide
@LiTTleDRAgo
As I know.... script dari yanfly message melody udah tersedia deh bgituan :hmm:
Atau, coba akalin aja begini ~ :hmm:
  • Di database, dari awal nama ny "Ralph" udah di ganti dengan "/C[2]Ralph/C[0]" .....
  • Begitu juga dengan nama item, dll, dll nya.....
  • Terus, coba panggil >>> /N[1] <<< di message box :thumbup:
  • Q blom coba sendiri sih :hammer: but scara teori mestiny bisa ~ kalo CUMA untuk message.... :thumbup: but mungkin bakal encounter pas buka menu :hammer: try it out ~
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-24, 19:47
PostRe: [VX]Dhoom Script Workshop
LiTTleDRAgo 
Senior
Senior
LiTTleDRAgo

Level 5
Posts : 712
Thanked : 27
Engine : RMXP
Skill : Skilled
Type : Scripter
Awards:
[VX]Dhoom Script Workshop - Page 3 Vide
Kuro Creator wrote:
@LiTTleDRAgo
As I know.... script dari yanfly message melody udah tersedia deh bgituan :hmm:
Atau, coba akalin aja begini ~ :hmm:
  • Di database, dari awal nama ny "Ralph" udah di ganti dengan "/C[2]Ralph/C[0]" .....
  • Begitu juga dengan nama item, dll, dll nya.....
  • Terus, coba panggil >>> /N[1] <<< di message box :thumbup:
  • Q blom coba sendiri sih :hammer: but scara teori mestiny bisa ~ kalo CUMA untuk message.... :thumbup: but mungkin bakal encounter pas buka menu :hammer: try it out ~

kalo pake cara itu kan biasanya "kelupaan"...
pegel juga kalo mesti tambahin prefix /c[1] /c[0] di setiap word

dan juga, gw pinginnya bisa dipake di CMS juga warna-warninya

harusnya sih gampang, kan semuamuanya pasti dari draw_text method ^^
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-25, 12:06
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 - Page 3 Vide
@drago: ok... kli ini lmyan g sulit nih :P
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-25, 12:09
PostRe: [VX]Dhoom Script Workshop
NachtEinhorn 
Robot Gedek Galak
NachtEinhorn

Level 5
Posts : 1274
Thanked : 9
Engine : Multi-Engine User
Skill : Beginner
Type : Developer

[VX]Dhoom Script Workshop - Page 3 Vide
ok, Dhoom, wa minta jga XD

Nama: SKill Separator

Deskripsi, bikin tambahan men di Battle Dialog ntk Skill, di scriptnya sendiri ngasi batasan dalam database, jadi skill no 1- sekian di database mask menu "A", trs lanjtannya sekian sampe sekian masuk menu "B", lalu lainnya mask menu C gitu.. bisa kan?
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-25, 20: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 - Page 3 Vide
@drago: mngkin g sprti yg dhrapkan... ya dripada g sama sekali :hammer:
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

@milan: here you go...
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
kalo ada keluhan silahkan lapor (kyknya bkal ada deh :hammer:)
[VX]Dhoom Script Workshop - Page 3 Empty2011-05-25, 20:59
PostRe: [VX]Dhoom Script Workshop
NachtEinhorn 
Robot Gedek Galak
NachtEinhorn

Level 5
Posts : 1274
Thanked : 9
Engine : Multi-Engine User
Skill : Beginner
Type : Developer

[VX]Dhoom Script Workshop - Page 3 Vide
thank you very much to Dhoom, udah mau buatin :sembah:

cendoled :thumbup:
[VX]Dhoom Script Workshop - Page 3 Empty
PostRe: [VX]Dhoom Script Workshop
Sponsored content 




[VX]Dhoom Script Workshop - Page 3 Vide
 

[VX]Dhoom Script Workshop

Topik sebelumnya Topik selanjutnya Kembali Ke Atas 

Similar topics

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

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