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.
|
|
| [VX]Dhoom Script Workshop | |
| |
2011-04-02, 16:43 | [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| 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 Ok, Request kubuka! Template RequestTipe/Nama Script: Deskripsi Script: sekarang tergantung level script nya lebih mudah lebih cepat 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
Terakhir diubah oleh DrDhoom tanggal 2012-09-18, 13:39, total 18 kali diubah |
| | | 2011-04-02, 16:45 | Re: [VX]Dhoom Script Workshop |
---|
Oscar Senior
Posts : 830 Thanked : 13 Engine : RMVX Skill : Beginner Type : Writer
| 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 , itu cuman saran gw doang, dipakai silahkan engga juga gpp, siapa tau situ lebih manteb
Terakhir diubah oleh Oscar tanggal 2011-04-02, 17:04, total 1 kali diubah |
| | | 2011-04-02, 17:00 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| wogh mntep pnjlsannya... kukerjain dulu |
| | | 2011-04-02, 17:16 | Re: [VX]Dhoom Script Workshop |
---|
Seintz Novice
Posts : 127 Thanked : 0 Engine : RMVX Skill : Very Beginner Type : Event Designer
| 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. 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! |
| | | 2011-04-02, 17:32 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| rada g ngrti nih itu fungsinya sama kayak message kan? lalu textbox nya dibikin scroll?(klo text nya kpnjngn) dan choice nya sma kyk dgmbar? |
| | | 2011-04-02, 18:28 | Re: [VX]Dhoom Script Workshop |
---|
fly-man
Poison Elemental Anak Cantik
Posts : 917 Thanked : 11 Engine : RMVX Skill : Beginner Type : Artist
Awards:
| 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 |
| | | 2011-04-02, 18:37 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| waduh... kan udah kukasih tau diawal klo aq blum bsa nrima req battle system |
| | | 2011-04-02, 18:46 | Re: [VX]Dhoom Script Workshop |
---|
fly-man
Poison Elemental Anak Cantik
Posts : 917 Thanked : 11 Engine : RMVX Skill : Beginner Type : Artist
Awards:
| 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 |
| | | 2011-04-05, 12:15 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| hmmm... combo sprti di BoF 4 ya 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 #===============================================================================
|
| | | 2011-04-05, 14:52 | Re: [VX]Dhoom Script Workshop |
---|
Kuro Ethernite The Creator
Posts : 1631 Thanked : 24 Engine : RMVX Ace Skill : Masterful Type : Jack of All Trades
Awards:
| CRAP !!!! since when ?? I mean, since when ganti type jadi scripter ?? whatever..... owh yah q ikutan nimbrung request jga deh ~ Name : Fade Text (q ga puny sense nama yg bagus ) Type : Text kali ? Description : Text yang cuma numpang muncul d screen smentara doank, abis itu ngilang 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 durasi fade-in, fade-outny udah d tentuin d modul klo bisa tambahin jenis font, size, color, dll dll dsb ny Sekian ~ |
| | | 2011-04-05, 23:54 | Re: [VX]Dhoom Script Workshop |
---|
Oscar Senior
Posts : 830 Thanked : 13 Engine : RMVX Skill : Beginner Type : Writer
| @Dhoom, wogh udah selesai makasih banget gan , 1 cendol buat anda 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 , so... pending dulu aja yang ini yaw? |
| | | 2011-04-06, 00:11 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| @kuro: since kmren2 itu text ny muncul d map atau lainny? dtmpung dlu dh @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... pdhl klo cmn bwt satu item dh klar ini |
| | | 2011-04-06, 10:01 | Re: [VX]Dhoom Script Workshop |
---|
Oscar Senior
Posts : 830 Thanked : 13 Engine : RMVX Skill : Beginner Type : Writer
| @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 . Kalo bukan berarti gw yang bego ga mudeng maksud situ 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? , tapi itu cuman untuk 1 orang. Kalo buat 4 atau lebih party harus ada variabel lagi . 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. tapi kalo kesusahan ya gpp dah, lain kali aja... |
| | | 2011-04-06, 10:30 | Re: [VX]Dhoom Script Workshop |
---|
richter_h Salto Master Hancip RMID
Posts : 1705 Thanked : 30 Engine : Other Skill : Skilled Type : Developer
Awards:
| | | | 2011-04-06, 11:28 | Re: [VX]Dhoom Script Workshop |
---|
hart Senior
Posts : 805 Thanked : 38 Engine : Other Skill : Very Beginner Type : Developer
| @om dhoom dan om kuro: WADUH, SAYA BENAR2 MINTA MAAF :sembah:i... tadi saya nganggur, tanpa sadar saya malah ngerjain requestnya om kuro Maaf om dhoom kalau om mau bikin lagi aja pasti lebih bagus dan rapi - 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 |
| | | 2011-04-06, 11:43 | Re: [VX]Dhoom Script Workshop |
---|
bungatepijalan Moe Princess
Posts : 1487 Thanked : 30 Engine : Multi-Engine User Skill : Intermediate Type : Developer
Awards:
| Ada yg lupa dariku 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 Dan.. scriptnya msh tergolong sederhana Utk cara pakenya, liat di tridnya
Bole khan!? |
| | | 2011-04-06, 11:48 | Re: [VX]Dhoom Script Workshop |
---|
richter_h Salto Master Hancip RMID
Posts : 1705 Thanked : 30 Engine : Other Skill : Skilled Type : Developer
Awards:
| @btj mancap tuh... comot ah sedang ane saja skrip blom ada... dan untungnya tuning skrip udah! post ah... |
| | | 2011-04-06, 13:17 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| @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 @rich: slhkan bang |
| | | 2011-04-06, 14:08 | Re: [VX]Dhoom Script Workshop |
---|
fly-man
Poison Elemental Anak Cantik
Posts : 917 Thanked : 11 Engine : RMVX Skill : Beginner Type : Artist
Awards:
| om Dhoom.. yang skill combo BoF 4 kabar gimna???? huahhahahaahha |
| | | 2011-04-06, 15:34 | Re: [VX]Dhoom Script Workshop |
---|
Kuro Ethernite The Creator
Posts : 1631 Thanked : 24 Engine : RMVX Ace Skill : Masterful Type : Jack of All Trades
Awards:
| yay, udah d selesaiin uhm... ngerjain tanpa sadar ??? spertiny salah satu kmampuan q memikat user lain kluar bgtu aja ~ |
| | | 2011-04-06, 20:17 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| @fly: sbr bang... brhbng blum ad kpstian dri seintz jd q kkrjkn req mu dlu |
| | | 2011-04-06, 20:59 | Re: [VX]Dhoom Script Workshop |
---|
fly-man
Poison Elemental Anak Cantik
Posts : 917 Thanked : 11 Engine : RMVX Skill : Beginner Type : Artist
Awards:
| ok d kk Dhoom.. hihihi.. makasiiii |
| | | 2011-04-06, 21:33 | Re: [VX]Dhoom Script Workshop |
---|
Oscar Senior
Posts : 830 Thanked : 13 Engine : RMVX Skill : Beginner Type : Writer
| - 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 , ya seperti ini yang wa maksud. Dan jika dura habis dan di iventory udah 0 , maka force equip pada pedang yang sudah diequip , begitulah anyway dont bother, kerjakan rikues lain yang kiranya lebih mudah dulu aja |
| | | 2011-04-06, 21:39 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| @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 |
| | | 2011-04-07, 11:36 | Re: [VX]Dhoom Script Workshop |
---|
DrDhoom Doomed Zombie
Posts : 629 Thanked : 22 Engine : Multi-Engine User Skill : Intermediate Type : Scripter
| 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 #===============================================================================
|
| | | | Re: [VX]Dhoom Script Workshop |
---|
Sponsored content
| | | | | [VX]Dhoom Script Workshop | |
|
Similar topics | |
|
Similar topics | |
| |
Halaman 1 dari 4 | Pilih halaman : 1, 2, 3, 4 | |
| Permissions in this forum: | Anda tidak dapat menjawab topik
| |
| |
Latest 10 Topics | [Web Novel] Gloria Infidelis 2016-11-17, 21:27 by LightNightKnight
[Announcement] Forum baru untuk RMID 2016-08-25, 16:39 by TheoAllen
Where I'm Wrong ? 2016-07-24, 16:10 by ReydVires
flakeheartnet's Resources part III 2016-07-08, 14:30 by flakeheartnet
Keira's Art Warehouse 2016-06-28, 19:27 by KeiraBlaze
Theo Core Time System + Bingung 2016-06-27, 16:24 by Lockin
Error Script, Maybe ? 2016-06-27, 16:20 by Lockin
Nusaimoe @ RMID Lounge 2016-06-21, 05:02 by Jihad Bagas
Call Random Battle 2016-06-15, 17:04 by Lockin
Flakeheartnet Resources Part II [come back gift] 2016-06-07, 15:51 by flakeheartnet
|
Statistics
|
Members: [ 4947 ]
Topics: [ 8258 ]
Posts: [ 112606 ]
Newest member: [ https://rmid.forumotion.net/u4968 ]
|
|
|
|
|
|