Guest Access
Go to page : 1, 2, 3
ACTIVATED
ACTIVATED
ACTIVATED
profile
yeah I saw it, but its rather big cause I have a lot of things in it :O.
well, I took another ones so I wouldn' t have to write all of it -.-, and I editted it. In game it slashes and everything, it equips, but it just doesnt hit the senemy.
ebonyzack
profile
G@MeF@Ce wrote:yo Zack! sent you a PM...
been busy with lots of surprises for this month
(something about the fourth of July)
So,
- Broad sword
- mini boss - zoom effect (fixed)
- Hot keys error
- Quick skills menu
let's take it from the top the Broadsword.
now was this a edit to a tool that existed or
you made a new one from scratch?
-
yeah I saw it, but its rather big cause I have a lot of things in it :O.
well, I took another ones so I wouldn' t have to write all of it -.-, and I editted it. In game it slashes and everything, it equips, but it just doesnt hit the senemy.
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
Administrator
profile
G@MeF@Ce
profile
@XAS Tool (weapon) -
if the weapon is not doing damage,
start with F9 database and make certain
the broad sword is setup correctly for damage.
(skills tab / weapons tab)
then F11 look into the "SKILLS" script
make certain you have the weapon setup correctly in the module
A => B
A = weapon ID (in F9 database)
B => Tool ID (event_ID in Tool Map)
*once you got your weapons straight.
here's the XAS extra skills script I had edited for XAS 3.91
(there's a small menu bug that I plan on fixing later)
oh and I changed the title of this thread to
"XAS support (crazy combos)"
if the weapon is not doing damage,
start with F9 database and make certain
the broad sword is setup correctly for damage.
(skills tab / weapons tab)
then F11 look into the "SKILLS" script
make certain you have the weapon setup correctly in the module
- Code:
module XAS_SKILL
WEAPON_ID_TOOL = {
1 => 1 # Bronze Sword
}
A => B
A = weapon ID (in F9 database)
B => Tool ID (event_ID in Tool Map)
*once you got your weapons straight.
here's the XAS extra skills script I had edited for XAS 3.91
(there's a small menu bug that I plan on fixing later)
- Code:
#_______________________________________________________________________________
# MOG XAS EXTRA Skill V1.0 (EDITED)
#_______________________________________________________________________________
# By Moghunter
# http://www.atelier-rgss.com
#
# edited by g@Mef@Ce for XAS 3.91
# http://www.gameface101.com
#_______________________________________________________________________________
# 2 Images required in Windowskins:
#
# EX_Layout.png
# EX_Layout2.png
#_______________________________________________________________________________
module MOG
EX_ELEMENT_TYPE = true
EX_SLOW_MOTION_EFFECT = false
EX_MOTION_SE = RPG::AudioFile.new("056-Right02", 100, 50)
EX_HUD_X = 238
EX_HUD_Y = 430
EX_LAY_X = -26
EX_LAY_Y = -10
EX_LAY2_X = -28
EX_LAY2_Y = -10
EX_ICON_X = 2
EX_ICON_Y = -6
DISABLE_EX_HUD_SWITCH = 5
EX_SKILL_BUTTON = Input::L
end
#==============================================================================
# Game_System
#==============================================================================
class Game_System
attr_accessor :xas_skill_ex1
attr_accessor :xas_skill_ex2
attr_accessor :xas_skill_ex3
attr_accessor :xas_skill_ex4
attr_accessor :xas_skill_ex5
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
alias mog_xas_ex_skill_initialize initialize
def initialize
mog_xas_ex_skill_initialize
@xas_skill_ex1 = 0
@xas_skill_ex2 = 0
@xas_skill_ex3 = 0
@xas_skill_ex4 = 0
@xas_skill_ex5 = 0
end
end
#==============================================================================
# Game_Player
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# Skill Select
#--------------------------------------------------------------------------
def skill_select_update
if Input.trigger?(Input::R)
$scene = Quick_Menu_Extra_Skill.new
end
end
#--------------------------------------------------------------------------
# Conf Move +++ edit +++
#--------------------------------------------------------------------------
def conf_move
if @actor.states.include?(XAS::CONFUSE_ID)
if Input.press?(Input::UP)
turn_down
elsif Input.press?(Input::DOWN)
turn_up
elsif Input.press?(Input::RIGHT)
turn_left
elsif Input.press?(Input::LEFT)
turn_right
end
else
if Input.press?(Input::UP)
turn_up
elsif Input.press?(Input::DOWN)
turn_down
elsif Input.press?(Input::RIGHT)
turn_right
elsif Input.press?(Input::LEFT)
turn_left
end
end
end
#--------------------------------------------------------------------------
# Extra Skill Update
#--------------------------------------------------------------------------
def extra_skill_update
if Input.press?(MOG::EX_SKILL_BUTTON)
if @actor.states.include?(XAS::MUTE_ID)
seal_text
return false
end
#EX Skill 1
if Input.trigger?(Input::C) and
$game_system.xas_skill_ex1 != 0
action_id = $game_system.xas_skill_ex1
conf_move
self.shoot(action_id)
end
#EX Skill 2
if Input.trigger?(Input::Z) and
$game_system.xas_skill_ex2 != 0
action_id = $game_system.xas_skill_ex2
conf_move
self.shoot(action_id)
end
#EX Skill 3
if Input.trigger?(Input::Y) and
$game_system.xas_skill_ex3 != 0
action_id = $game_system.xas_skill_ex3
conf_move
self.shoot(action_id)
end
#EX Skill 4
if Input.trigger?(Input::X) and
$game_system.xas_skill_ex4 != 0
action_id = $game_system.xas_skill_ex4
conf_move
self.shoot(action_id)
end
#EX Skill 5
if Input.trigger?(Input::A) and
$game_system.xas_skill_ex5 != 0
action_id = $game_system.xas_skill_ex5
conf_move
self.shoot(action_id)
end
end
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
alias mog_xas_extaskill_update update
def update
mog_xas_extaskill_update
return if @actor == nil
return true if $game_temp.menu_calling == true
extra_skill_update
skill_select_update
end
end
#==============================================================================
# Quick_Window_Extra_Skill
#==============================================================================
class Quick_Window_Extra_Skill < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(190, 128, 280, 250)
self.opacity = 160
@actor = actor
self.z = 5001
@column_max = 6
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# Skill
#--------------------------------------------------------------------------
def skill
return @data[self.index]
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 0...@actor.skills.size
skill = $data_skills[@actor.skills[i]]
if MOG::EX_ELEMENT_TYPE == true
if skill != nil and skill.element_set.include?($data_system.elements.index("Extra Skill"))
@data.push(skill)
end
else
if skill != nil
@data.push(skill)
end
end
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 40, row_max * 40)
for i in 0...@item_max
draw_item(i)
end
end
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item(index)
skill = @data[index]
if @actor.skill_can_use?(skill.id)
self.contents.font.color = normal_color
else
self.contents.font.color = disabled_color
end
x = 8 + index % 6 * 40
y = 4 + index / 6 * 40
rect = Rect.new(x, y, self.width / @column_max - 40, 40)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
bitmap = RPG::Cache.icon(skill.icon_name)
opacity = self.contents.font.color == normal_color ? 255 : 128
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# EX_Skill_1
#==============================================================================
class EX_Skill_1 < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(140, 0, 75, 75)
self.opacity = 255
@actor = actor
self.z = 5001
@column_max = 1
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@id = $game_system.xas_skill_ex1
self.contents = Bitmap.new(width - 32, row_max * 32)
draw_item
end
#--------------------------------------------------------------------------
# skill
#--------------------------------------------------------------------------
def skill
return $data_skills[@id]
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item
return if @id == 0
x = 8
y = 8
bitmap = RPG::Cache.icon(skill.icon_name)
self.contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# EX_Skill_2
#==============================================================================
class EX_Skill_2 < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(215, 0, 75, 75)
self.opacity = 255
@actor = actor
self.z = 5001
@column_max = 1
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@id = $game_system.xas_skill_ex2
self.contents = Bitmap.new(width - 32, row_max * 32)
draw_item
end
#--------------------------------------------------------------------------
# skill
#--------------------------------------------------------------------------
def skill
return $data_skills[@id]
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item
return if @id == 0
x = 8
y = 8
bitmap = RPG::Cache.icon(skill.icon_name)
self.contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# EX_Skill_3
#==============================================================================
class EX_Skill_3 < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(290, 0, 75, 75)
self.opacity = 255
@actor = actor
self.z = 5001
@column_max = 1
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@id = $game_system.xas_skill_ex3
self.contents = Bitmap.new(width - 32, row_max * 32)
draw_item
end
#--------------------------------------------------------------------------
# skill
#--------------------------------------------------------------------------
def skill
return $data_skills[@id]
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item
return if @id == 0
x = 8
y = 8
bitmap = RPG::Cache.icon(skill.icon_name)
self.contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# EX_Skill_4
#==============================================================================
class EX_Skill_4 < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(365, 0, 75, 75)
self.opacity = 255
@actor = actor
self.z = 5001
@column_max = 1
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@id = $game_system.xas_skill_ex4
self.contents = Bitmap.new(width - 32, row_max * 32)
draw_item
end
#--------------------------------------------------------------------------
# skill
#--------------------------------------------------------------------------
def skill
return $data_skills[@id]
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item
return if @id == 0
x = 8
y = 8
bitmap = RPG::Cache.icon(skill.icon_name)
self.contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# EX_Skill_5
#==============================================================================
class EX_Skill_5 < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(440, 0, 75, 75)
self.opacity = 255
@actor = actor
self.z = 5001
@column_max = 1
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@id = $game_system.xas_skill_ex5
self.contents = Bitmap.new(width - 32, row_max * 32)
draw_item
end
#--------------------------------------------------------------------------
# skill
#--------------------------------------------------------------------------
def skill
return $data_skills[@id]
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item
return if @id == 0
x = 8
y = 8
bitmap = RPG::Cache.icon(skill.icon_name)
self.contents.blt(x, y, bitmap, Rect.new(0, 0, 24, 24))
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# QUICK MENU Extra SKILL
#==============================================================================
class Quick_Menu_Extra_Skill
# initialize --------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
#--------------------------------------------------------------------------
# main
#--------------------------------------------------------------------------
def main
@actor = $game_party.actors[@actor_index]
@action_id = 0
@help_window = Window_Help.new
@help_window.opacity = 0
@help_window.x = 220
@help_window.y = 64
@help_window.z = 5001
@help_window.opacity = 0
@help_window.contents_opacity = 0
@skill_window = Quick_Window_Extra_Skill.new(@actor)
@skill_window.x = 0
@skill_window.y = 128
@skill_window.opacity = 0
@skill_window.contents_opacity = 0
@skill_window.help_window = @help_window
@skill_window.active = false
@sk1 = EX_Skill_1.new(@actor)
@sk1.help_window = @help_window
@sk1.active = true
@sk2 = EX_Skill_2.new(@actor)
@sk2.help_window = @help_window
@sk2.active = false
@sk3 = EX_Skill_3.new(@actor)
@sk3.help_window = @help_window
@sk3.active = false
@sk4 = EX_Skill_4.new(@actor)
@sk4.help_window = @help_window
@sk4.active = false
@sk5 = EX_Skill_5.new(@actor)
@sk5.help_window = @help_window
@sk5.active = false
@spriteset = Spriteset_Map.new
@windows_hud2 = Xas_Tool_Hud.new
@windows_hud2.x = XAS_HUD::TOOL_HUD_X
@windows_hud2.y = XAS_HUD::TOOL_HUD_Y
@text = Sprite.new
@text.bitmap = Bitmap.new(640,64)
@text.z = 5005
@text.bitmap.font.name = "Georgia"
@text.bitmap.font.size = 20
@text.bitmap.font.bold = true
@text.bitmap.font.italic = true
@text.bitmap.font.color.set(255, 255, 255,220)
@text.bitmap.draw_hemming_text(0, 0, 120, 40, "<- SKILL (L) ",1)
@text.bitmap.draw_hemming_text(525, 0, 120, 40, "(R)ITEM -> ",1)
@text.y = 240
@text2 = Sprite.new
@text2.bitmap = Bitmap.new(640,128)
@text2.z = 5005
@text2.bitmap.font.name = "Georgia"
@text2.bitmap.font.size = 28
@text2.bitmap.font.bold = true
@text2.bitmap.font.italic = true
@text2.bitmap.font.color.set(155, 255, 255,255)
@text2.bitmap.draw_hemming_text(270, 0, 120, 40, "Extra Skill",1)
@text2.bitmap.font.size = 22
@text2.bitmap.font.color.set(255, 255, 255,220)
@text2.bitmap.draw_hemming_text(150, 32, 360, 40, "How to use - (Press L Button + Action Button)",1)
@text2.y = 360
@text_float = 0
if $game_switches[XAS_HUD::DISABLE_HUD_SWITCH] == true
@windows_hud2.visible = false
else
@windows_hud2.visible = true
end
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
for i in 0..10
@skill_window.x -= 25
@skill_window.opacity -= 15
@skill_window.contents_opacity -= 25
@help_window.x += 25
@help_window.opacity -= 15
@help_window.contents_opacity -= 25
@sk1.opacity -= 15
@sk2.opacity -= 15
@sk3.opacity -= 15
@sk4.opacity -= 15
@sk5.opacity -= 15
@sk1.y -= 10
@sk2.y -= 10
@sk3.y -= 10
@sk4.y -= 10
@sk5.y -= 10
Graphics.update
end
Graphics.freeze
@help_window.dispose
@skill_window.dispose
@spriteset.dispose
@windows_hud2.dispose
@sk1.dispose
@sk2.dispose
@sk3.dispose
@sk4.dispose
@sk5.dispose
@text.bitmap.dispose
@text.dispose
@text = nil
@text2.bitmap.dispose
@text2.dispose
@text2 = nil
end
#--------------------------------------------------------------------------
# update
#--------------------------------------------------------------------------
def update
@help_window.update
@skill_window.update
@sk1.update
@sk2.update
@sk3.update
@sk4.update
@sk5.update
text_float_update
if @skill_window.x < 190
@skill_window.x += 25
@skill_window.opacity += 5
@skill_window.contents_opacity += 15
@help_window.x -= 25
@help_window.opacity += 5
@help_window.contents_opacity += 15
elsif @skill_window.x >= 190
@skill_window.x = 190
@skill_window.opacity = 160
@skill_window.contents_opacity = 255
@help_window.x = 0
@help_window.opacity = 160
@help_window.contents_opacity = 255
end
if @sk1.active
@action_id = 0
@sk1.opacity = 255
@sk2.opacity = 140
@sk3.opacity = 140
@sk4.opacity = 140
@sk5.opacity = 140
@sk1.contents_opacity = 255
@sk2.contents_opacity = 140
@sk3.contents_opacity = 140
@sk4.contents_opacity = 140
@sk5.contents_opacity = 140
@skill_window.opacity = 140
sk1_update
return
end
if @sk2.active
@action_id = 1
@sk1.opacity = 140
@sk2.opacity = 255
@sk3.opacity = 140
@sk4.opacity = 140
@sk5.opacity = 140
@sk1.contents_opacity = 140
@sk2.contents_opacity = 255
@sk3.contents_opacity = 140
@sk4.contents_opacity = 140
@sk5.contents_opacity = 140
@skill_window.opacity = 140
sk2_update
return
end
if @sk3.active
@action_id = 2
@sk1.opacity = 140
@sk2.opacity = 140
@sk3.opacity = 255
@sk4.opacity = 140
@sk5.opacity = 140
@sk1.contents_opacity = 140
@sk2.contents_opacity = 140
@sk3.contents_opacity = 255
@sk4.contents_opacity = 140
@sk5.contents_opacity = 140
@skill_window.opacity = 140
sk3_update
return
end
if @sk4.active
@action_id = 3
@sk1.opacity = 140
@sk2.opacity = 140
@sk3.opacity = 140
@sk4.opacity = 255
@sk5.opacity = 140
@sk1.contents_opacity = 140
@sk2.contents_opacity = 140
@sk3.contents_opacity = 140
@sk4.contents_opacity = 255
@sk5.contents_opacity = 140
@skill_window.opacity = 140
sk4_update
return
end
if @sk5.active
@action_id = 4
@sk1.opacity = 140
@sk2.opacity = 140
@sk3.opacity = 140
@sk4.opacity = 140
@sk5.opacity = 255
@sk1.contents_opacity = 140
@sk2.contents_opacity = 140
@sk3.contents_opacity = 140
@sk4.contents_opacity = 140
@sk5.contents_opacity = 255
@skill_window.opacity = 140
sk5_update
return
end
if @skill_window.active
@sk1.opacity = 140
@sk2.opacity = 140
@sk3.opacity = 140
@sk4.opacity = 140
@sk5.opacity = 140
@skill_window.opacity = 255
update_skill
return
end
end
#--------------------------------------------------------------------------
# Text Float Update
#--------------------------------------------------------------------------
def text_float_update
if @text_float == 0
@text.oy += 1
@text_float = 1 if @text.oy > 10
else
@text.oy -= 1
@text_float = 0 if @text.oy < -10
end
end
#--------------------------------------------------------------------------
# Cancel
#--------------------------------------------------------------------------
def cancel
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
end
#--------------------------------------------------------------------------
# Menu Change
#--------------------------------------------------------------------------
def menu_change
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
$scene = Quick_Menu_Item.new
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
$scene = Quick_Menu_Skill.new
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
$scene = Quick_Menu_Extra_Skill.new
return
end
end
#--------------------------------------------------------------------------
# Sk1 Update
#--------------------------------------------------------------------------
def sk1_update
cancel
menu_change
if Input.trigger?(Input::C)
@sk1.active = false
@skill_window.active = true
return
end
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@sk1.active = false
@sk2.active = true
return
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@sk1.active = false
@sk5.active = true
return
end
end
#--------------------------------------------------------------------------
# Sk2 Update
#--------------------------------------------------------------------------
def sk2_update
cancel
menu_change
if Input.trigger?(Input::C)
@sk2.active = false
@skill_window.active = true
return
end
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@sk2.active = false
@sk3.active = true
return
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@sk2.active = false
@sk1.active = true
return
end
end
#--------------------------------------------------------------------------
# Sk3 Update
#--------------------------------------------------------------------------
def sk3_update
cancel
menu_change
if Input.trigger?(Input::C)
@sk3.active = false
@skill_window.active = true
return
end
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@sk3.active = false
@sk4.active = true
return
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@sk3.active = false
@sk2.active = true
return
end
end
#--------------------------------------------------------------------------
# Sk4 Update
#--------------------------------------------------------------------------
def sk4_update
cancel
menu_change
if Input.trigger?(Input::C)
@sk4.active = false
@skill_window.active = true
return
end
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@sk4.active = false
@sk5.active = true
return
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@sk4.active = false
@sk3.active = true
return
end
end
#--------------------------------------------------------------------------
# Sk5 Update
#--------------------------------------------------------------------------
def sk5_update
cancel
menu_change
if Input.trigger?(Input::C)
@sk5.active = false
@skill_window.active = true
return
end
if Input.trigger?(Input::RIGHT)
$game_system.se_play($data_system.cursor_se)
@sk5.active = false
@sk1.active = true
return
end
if Input.trigger?(Input::LEFT)
$game_system.se_play($data_system.cursor_se)
@sk5.active = false
@sk4.active = true
return
end
end
#--------------------------------------------------------------------------
# Update Skill
#--------------------------------------------------------------------------
def update_skill
menu_change
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@skill_window.active = false
if @action_id == 0
@sk1.active = true
elsif @action_id == 1
@sk2.active = true
elsif @action_id == 2
@sk3.active = true
elsif @action_id == 3
@sk4.active = true
elsif @action_id == 4
@sk5.active = true
end
return
end
if Input.trigger?(Input::C)
@skill = @skill_window.skill
if @skill == nil or not @actor.skill_can_use?(@skill.id)
$game_system.se_play($data_system.buzzer_se)
return
end
@skill_window.active = false
$game_system.se_play($data_system.equip_se)
if @action_id == 0
$game_system.xas_skill_ex1 = @skill.id
@sk1.refresh
@sk1.active = true
elsif @action_id == 1
$game_system.xas_skill_ex2 = @skill.id
@sk2.refresh
@sk2.active = true
elsif @action_id == 2
$game_system.xas_skill_ex3 = @skill.id
@sk3.refresh
@sk3.active = true
elsif @action_id == 3
$game_system.xas_skill_ex4 = @skill.id
@sk4.refresh
@sk4.active = true
else
$game_system.xas_skill_ex5 = @skill.id
@sk5.refresh
@sk5.active = true
end
return
end
end
end
#==============================================================================
# EX SKILL HUD
#==============================================================================
class Extra_Skill_Hud < Sprite
include MOG
#--------------------------------------------------------------------------
# * initialize
#--------------------------------------------------------------------------
def initialize(viewport)
super(viewport)
# Layout -------------------------------------------------------------------
@layout_image = RPG::Cache.windowskin("EX_Layout")
@layout_bitmap = Bitmap.new(@layout_image.width,@layout_image.height)
@layout_sprite = Sprite.new
@layout_sprite.bitmap = @layout_bitmap
@layout_src_rect_back = Rect.new(0, 0,@layout_image.width, @layout_image.height)
@layout_bitmap.blt(0,0, @layout_image, @layout_src_rect_back)
@layout_sprite.z = 5001
@layout_sprite.x = EX_HUD_X + EX_LAY_X
@layout_sprite.y = EX_HUD_Y + EX_LAY_Y
# Layout2 ------------------------------------------------------------------
@layout2_image = RPG::Cache.windowskin("EX_Layout2")
@layout2_bitmap = Bitmap.new(@layout2_image.width,@layout2_image.height)
@layout2_sprite = Sprite.new
@layout2_sprite.bitmap = @layout2_bitmap
@layout2_src_rect_back = Rect.new(0, 0,@layout2_image.width, @layout2_image.height)
@layout2_bitmap.blt(0,0, @layout2_image, @layout2_src_rect_back)
@layout2_sprite.z = 5004
@layout2_sprite.x = EX_HUD_X + EX_LAY2_X
@layout2_sprite.y = EX_HUD_Y + EX_LAY2_Y
# Icon ---------------------------------------------------------------------
@icon = Sprite.new
@icon.bitmap = Bitmap.new(160,24)
space = 32
# EX1
if $game_system.xas_skill_ex1 != 0
skill = $data_skills[$game_system.xas_skill_ex1]
image = RPG::Cache.icon(skill.icon_name)
@icon.bitmap.blt(space * 0, 0, image, Rect.new(0, 0, 24, 24))
end
# EX2
if $game_system.xas_skill_ex2 != 0
skill = $data_skills[$game_system.xas_skill_ex2]
image = RPG::Cache.icon(skill.icon_name)
@icon.bitmap.blt(space * 1, 0, image, Rect.new(0, 0, 24, 24))
end
# EX3
if $game_system.xas_skill_ex3 != 0
skill = $data_skills[$game_system.xas_skill_ex3]
image = RPG::Cache.icon(skill.icon_name)
@icon.bitmap.blt(space * 2, 0, image, Rect.new(0, 0, 24, 24))
end
# EX4
if $game_system.xas_skill_ex4 != 0
skill = $data_skills[$game_system.xas_skill_ex4]
image = RPG::Cache.icon(skill.icon_name)
@icon.bitmap.blt(space * 3, 0, image, Rect.new(0, 0, 24, 24))
end
# EX5
if $game_system.xas_skill_ex5 != 0
skill = $data_skills[$game_system.xas_skill_ex5]
image = RPG::Cache.icon(skill.icon_name)
@icon.bitmap.blt(space * 4, 0, image, Rect.new(0, 0, 24, 24))
end
@icon.z = 5003
@icon.x = EX_HUD_X + EX_ICON_X
@icon.y = EX_HUD_Y + EX_ICON_Y
@icon.opacity = 120
@layout_sprite.opacity = 120
@layout2_sprite.opacity = 0
visable_check
end
#--------------------------------------------------------------------------
# * dispose
#--------------------------------------------------------------------------
def dispose
#Layout Dispose
@layout_bitmap.dispose
@layout_bitmap = nil
@layout_sprite.bitmap.dispose
@layout_sprite.bitmap = nil
@layout_sprite.dispose
@layout_sprite = nil
#Layout Dispose
@layout2_bitmap.dispose
@layout2_bitmap = nil
@layout2_sprite.bitmap.dispose
@layout2_sprite.bitmap = nil
@layout2_sprite.dispose
@layout2_sprite = nil
#Icon Dispose
@icon.bitmap.dispose
@icon.bitmap = nil
@icon.dispose
@icon = nil
end
#--------------------------------------------------------------------------
# * update
#--------------------------------------------------------------------------
def update
pressed_check
visable_check
end
#--------------------------------------------------------------------------
# * Visable Check
#--------------------------------------------------------------------------
def visable_check
if $game_switches[MOG::DISABLE_EX_HUD_SWITCH] == true
@icon.visible = false
@layout_sprite.visible = false
@layout2_sprite.visible = false
else
@icon.visible = true
@layout_sprite.visible = true
@layout2_sprite.visible = true
end
end
#--------------------------------------------------------------------------
# * update
#--------------------------------------------------------------------------
def pressed_check
if Input.press?(Input::L) and not
($game_system.map_interpreter.running? or
$game_temp.message_window_showing )
if @layout_sprite.opacity < 255
@icon.opacity += 10
@layout_sprite.opacity += 10
@layout2_sprite.opacity += 35
end
else
@layout2_sprite.opacity -= 10 if @layout2_sprite.opacity > 0
if @layout_sprite.opacity > 120
@icon.opacity -= 10
@layout_sprite.opacity -= 10
end
end
end
end
#-------------------------------------------------------------------------------
# Scene_Map
#-------------------------------------------------------------------------------
class Scene_Map
alias exskill_main main
def main
@viewport_ex = Viewport.new(0, 0, 640, 480)
@viewport_ex.z = 9999
@exskill = Extra_Skill_Hud.new(@viewport_ex)
exskill_main
@exskill.dispose
@exskill = nil
@viewport_ex.dispose
@viewport_ex = nil
end
alias exskill_update update
def update
exskill_update
@exskill.update
end
end
$mog_rgss_xas_extra_skill = true
oh and I changed the title of this thread to
"XAS support (crazy combos)"
Administrator
Show Signature
ACTIVATED
ACTIVATED
ACTIVATED
profile
ebonyzack
profile
Agh, I have the skill (Broadsword, 199)
I have the weapon (17)
I have the script in SKILL
( 17=>199 # Broadsword )
AND the event on the TOOL map, it's 199 as well. :O...
here is the weapon module
As for the EXTRA SKILL script, thanks a lot man.
Well I plugged it in and got this error when I press 'Q'
Script 'Mog - XAS EXTRA SKILL' line 1028: TypeError occurred.
no implicit conversation from nil to integer
I have the weapon (17)
I have the script in SKILL
( 17=>199 # Broadsword )
AND the event on the TOOL map, it's 199 as well. :O...
here is the weapon module
- Code:
#==============================================================================#
# Broadsword
#==============================================================================#
module Database_Bullet
action_id = 199
LINK_ACTION_ID[action_id] = 0
SUFLAGS[action_id] = 10
DURATIONS[action_id] = 1
SELF_MOTIONS[action_id] = "_SWD_06"
plan = []
plan[3] = action_id
ATTACK_ID_PLANS[action_id] = plan
ATTACK_RANGE_TYPES[action_id] = SQUARE
ATTACK_RANGE_PLANS[action_id] = [1]
BLOW_POWERS[action_id] = 1
SELF_ANIMATION_PLANS[action_id] = []
SELF_ANIMATION_HIT[action_id] = 146
TARGET_INVINCIBLES_DURATIONS[action_id] = 8
ANIMATION_SPEED[action_id] = 2.0
FORCE_MOVE[action_id] = FORWARD
PLAYER_CAST_TIME[action_id] = 0
end
As for the EXTRA SKILL script, thanks a lot man.
Well I plugged it in and got this error when I press 'Q'
Script 'Mog - XAS EXTRA SKILL' line 1028: TypeError occurred.
no implicit conversation from nil to integer
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
Administrator
profile
do your other tools work? or is it this one not doing damage?
(try making the IDs match)
yes, go into F9 database > last tab
SYSTEM tab > bottom right = create an
element called "Extra Skills"
now go into the SKILLS tab, and check off the skill you want to use as an extra skill
G@MeF@Ce
profile
ebonyzack wrote:Agh, I have the skill (Broadsword, 199)
I have the weapon (17)
I have the script in SKILL
( 17=>199 # Broadsword )
AND the event on the TOOL map, it's 199 as well. :O...
do your other tools work? or is it this one not doing damage?
(try making the IDs match)
ebonyzack wrote:
As for the EXTRA SKILL script, thanks a lot man.
Well I plugged it in and got this error when I press 'Q'
Script 'Mog - XAS EXTRA SKILL' line 1028: TypeError occurred.
no implicit conversation from nil to integer
yes, go into F9 database > last tab
SYSTEM tab > bottom right = create an
element called "Extra Skills"
now go into the SKILLS tab, and check off the skill you want to use as an extra skill
Administrator
Show Signature
ACTIVATED
ACTIVATED
ACTIVATED
profile
ebonyzack
profile
Yeah man..all my other TOOLS work ;/.
and everything is good with the ID's , they are all 199 and 17 for the weapon..
and for the skills: I made a element thing and named it 'Extra Skills' I ticked a skill with it and when I pressed Q in the game to equip it, I get this error
Script 'MOG - EXTRA SKILL' line 111: NameError occurred. Uninitialized constant XAS::MUTE_ID
Actually, apparently it'sp only when I press Q, cause I pressed W and It brought up the extra skill menus, and I could equip my skill.
And umm, is there a way to make it so that I can equip skills to both D, and my extra 5 skills?
and everything is good with the ID's , they are all 199 and 17 for the weapon..
and for the skills: I made a element thing and named it 'Extra Skills' I ticked a skill with it and when I pressed Q in the game to equip it, I get this error
Script 'MOG - EXTRA SKILL' line 111: NameError occurred. Uninitialized constant XAS::MUTE_ID
Actually, apparently it'sp only when I press Q, cause I pressed W and It brought up the extra skill menus, and I could equip my skill.
And umm, is there a way to make it so that I can equip skills to both D, and my extra 5 skills?
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
Administrator
profile
~ try making both the TOOL ID and WEAPON ID a brand new number
(one that has not been used)
For the TOOL ID (and testing)
you can copy the broadsword event on the tool map and paste it until you get the desired event id number, say 300 just for kicks
(you can of course delete the events later)
then F9 WEAPON 300 for weapon ID
*sounds crazy but we are trouble shooting
F9 > WEAPONS tab >
"state change:" (right window)
is MUTE_ID checked for the skill you are trying to use?
The way the Extra skills is setup is to not have the chosen skills show in the skills menu, just the Extra skills menu. You could make the same skill twice? or this would require more edits to the script...
G@MeF@Ce
profile
ebonyzack wrote:Yeah man..all my other TOOLS work ;/.
and everything is good with the ID's , they are all 199 and 17 for the weapon..
~ try making both the TOOL ID and WEAPON ID a brand new number
(one that has not been used)
For the TOOL ID (and testing)
you can copy the broadsword event on the tool map and paste it until you get the desired event id number, say 300 just for kicks
(you can of course delete the events later)
then F9 WEAPON 300 for weapon ID
*sounds crazy but we are trouble shooting
ebonyzack wrote:
and for the skills: I made a element thing and named it 'Extra Skills' I ticked a skill with it and when I pressed Q in the game to equip it, I get this error
Script 'MOG - EXTRA SKILL' line 111: NameError occurred. Uninitialized constant XAS::MUTE_ID
Actually, apparently it'sp only when I press Q, cause I pressed W and It brought up the extra skill menus, and I could equip my skill.
And umm, is there a way to make it so that I can equip skills to both D, and my extra 5 skills?
F9 > WEAPONS tab >
"state change:" (right window)
is MUTE_ID checked for the skill you are trying to use?
The way the Extra skills is setup is to not have the chosen skills show in the skills menu, just the Extra skills menu. You could make the same skill twice? or this would require more edits to the script...
Administrator
Show Signature
ACTIVATED
ACTIVATED
ACTIVATED
profile
ebonyzack
profile
Okay I'll try that.
and oh, okay thats alright, umm, no its' not chdecked for the weapon, nor skill ;o. it only happens when I press Q though. I think it could be because there is alread ya function for the Q button in v3.9
edit: holy moly, I changed it and it attacks now, but now it stays atacking and slashing like crazy for a long time LOL. it looks funny.
and oh, okay thats alright, umm, no its' not chdecked for the weapon, nor skill ;o. it only happens when I press Q though. I think it could be because there is alread ya function for the Q button in v3.9
edit: holy moly, I changed it and it attacks now, but now it stays atacking and slashing like crazy for a long time LOL. it looks funny.
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
Administrator
profile
G@MeF@Ce
profile
@quick skills - here try my edited XAS Menu script
@weapon - ah progress, did you update the weapon module too?
check the tool event, make sure repeat is unchecked
in the events move route
- Code:
# ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■
#===============================================================================
# TOOL HUD / QUICK MENU / ALIAS MENUS / (edited by g@Mef@Ce for Extra Skills)
#===============================================================================
# ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■
#==============================================================================
# ■ Scene_Map
#==============================================================================
class Scene_Map
#--------------------------------------------------------------------------
# ● Call Menu
#--------------------------------------------------------------------------
def can_call?
return false if $game_temp.cast_time > 0
return false if $game_player.pickup_lock
return false if $game_temp.slow_motion > 0
if $game_player.battler != nil
return false if ($game_player.battler.stop or $game_player.battler.state_sleep)
end
return true
end
#--------------------------------------------------------------------------
# ● Call Menu
#--------------------------------------------------------------------------
alias pickup_call_menu call_menu
def call_menu
unless can_call?
$game_temp.menu_calling = false
return
end
pickup_call_menu
end
#--------------------------------------------------------------------------
# ● Call Save
#--------------------------------------------------------------------------
alias pickup_call_save call_save
def call_save
unless can_call?
$game_temp.save_calling = false
return
end
pickup_call_save
end
end
################################################################################
#===============================================================================
# SCENE SKILL/ SCENE ITEM
#===============================================================================
################################################################################
################################################################################
#===============================================================================
# ■ Scene_Skill
#===============================================================================
class Scene_Skill
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
alias mog_xasmain main
def main
@xastextime = 0
@xastextime2 = 450
@skill_text = Sprite.new
@skill_text.bitmap = Bitmap.new(160,100)
@skill_text.x = 700
@skill_text.y = 0
@skill_text.z = 9999
@skill_text.bitmap.font.name = "Georgia"
@skill_text.bitmap.font.size = 24
@skill_text.bitmap.font.bold = true
@skill_text.visible = false
@skill_text.bitmap.draw_text(0, 0, 140, 64, XAS_WINDOW_SKILL::EQUIPPED,1)
@skill_text2 = Sprite.new
@skill_text2.bitmap = Bitmap.new(640,64)
@skill_text2.x = 0
@skill_text2.y = 450
@skill_text2.z = 9999
@skill_text2.bitmap.font.name = "Georgia"
@skill_text2.bitmap.font.size = 24
@skill_text2.bitmap.font.bold = true
@skill_text2.visible = true
@skill_text2.bitmap.draw_text(0, 20, 640, 64,XAS_WINDOW_SKILL::PRESS ,1)
@skill_text2.opacity = @xastextime2
mog_xasmain
@skill_text.dispose
@skill_text2.dispose
end
#--------------------------------------------------------------------------
# Update Item
#--------------------------------------------------------------------------
alias mog_xasupdate update
def update
mog_xasupdate
@xastextime -= 3
@xastextime2 -= 3
@skill_text.opacity = @xastextime
@skill_text2.opacity = @xastextime2
if @xastextime <= 0
@xastextime = 0
@skill_text.visible = false
end
if @xastextime2 <= 0
@xastextime2 = 0
@skill_text2.visible = false
end
if @skill_text2.y > 400
@skill_text2.y -= 3
elsif @skill_text2.y <= 400
@skill_text2.y = 400
end
if @skill_text.x > 480
@skill_text.x -= 10
elsif @skill_text.x <= 480
@skill_text.x = 480
end
end
#--------------------------------------------------------------------------
# Update Skill
#--------------------------------------------------------------------------
alias mog_xasupdate_skill update_skill
def update_skill
mog_xasupdate_skill
if Input.trigger?(XAS_WINDOW_SKILL::BUTTON)
@skill = @skill_window.skill
unless @actor.skill_can_use?(@skill.id)
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.equip_se)
$game_system.xas_skill_id = @skill.id
@skill_text.visible = true
@skill_text.x = 700
@skill_text.opacity = @xastextime
@xastextime = 355
return
end
end
end
#===============================================================================
# ■ Scene Item
#===============================================================================
class Scene_Item
#--------------------------------------------------------------------------
# main
#--------------------------------------------------------------------------
alias mog_xasmain main
def main
@xastextime = 0
@xastextime2 = 450
@item_text = Sprite.new
@item_text.bitmap = Bitmap.new(160,100)
@item_text.x = 700
@item_text.y = 0
@item_text.z = 9999
@item_text.bitmap.font.name = "Georgia"
@item_text.bitmap.font.size = 24
@item_text.bitmap.font.bold = true
@item_text.visible = false
@item_text.bitmap.draw_text(0, 0, 140, 64, XAS_WINDOW_ITEM::EQUIPPED,1)
@item_text2 = Sprite.new
@item_text2.bitmap = Bitmap.new(640,64)
@item_text2.x = 0
@item_text2.y = 450
@item_text2.z = 9999
@item_text2.bitmap.font.name = "Georgia"
@item_text2.bitmap.font.size = 24
@item_text2.bitmap.font.bold = true
@item_text2.visible = true
@item_text2.bitmap.draw_text(0, 20, 640, 64,XAS_WINDOW_ITEM::PRESS ,1)
@item_text2.opacity = @xastextime2
mog_xasmain
@item_text.dispose
@item_text2.dispose
end
#--------------------------------------------------------------------------
# update
#--------------------------------------------------------------------------
alias mog_xasupdate update
def update
mog_xasupdate
@xastextime -= 3
@xastextime2 -= 3
@item_text.opacity = @xastextime
@item_text2.opacity = @xastextime2
if @xastextime <= 0
@xastextime = 0
@item_text.visible = false
end
if @xastextime2 <= 0
@xastextime2 = 0
@item_text2.visible = false
end
if @item_text2.y > 400
@item_text2.y -= 3
elsif @item_text2.y <= 400
@item_text2.y = 400
end
if @item_text.x > 480
@item_text.x -= 10
elsif @item_text.x <= 480
@item_text.x = 480
end
end
#--------------------------------------------------------------------------
# update item
#--------------------------------------------------------------------------
alias mog_xas_update_item update_item
def update_item
mog_xas_update_item
if Input.trigger?(XAS_WINDOW_ITEM::BUTTON)
@item = @item_window.item
unless @item.is_a?(RPG::Item)
$game_system.se_play($data_system.buzzer_se)
return
end
unless $game_party.item_can_use?(@item.id)
$game_system.se_play($data_system.buzzer_se)
return
end
item_id = @item.id
item_tool_id = XAS::XASITEM_ID[@item.id]
if item_tool_id != nil
$game_system.se_play($data_system.equip_se)
@item_text.visible = true
@item_text.x = 700
@item_text.opacity = @xastextime
@xastextime = 355
$game_system.xas_item_id = @item.id
return
end
end
end
end
################################################################################
################################################################################
#===============================================================================
# TOOL HUD SYSTEM
#===============================================================================
################################################################################
#===============================================================================
# ■ Window_Base
#===============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# ● draw_picture_number(x,y,value,file_name,align, space, frame_max ,frame_index)
#--------------------------------------------------------------------------
# X - Posição na horizontal
# Y - Posição na vertical
# VALUE - Valor Numérico
# FILE_NAME - Nome do arquivo
# ALIGN - Centralizar 0 - Esquerda 1- Centro 2 - Direita
# SPACE - Espaço entre os números.
# FRAME_MAX - Quantidade de quadros(Linhas) que a imagem vai ter.
# FRAME_INDEX - Definição do quadro a ser utilizado.
#--------------------------------------------------------------------------
def draw_picture_number(x,y,value, file_name,align = 0, space = 0, frame_max = 1,frame_index = 0)
number_image = RPG::Cache.windowskin(file_name)
frame_max = 1 if frame_max < 1
frame_index = frame_max -1 if frame_index > frame_max -1
align = 2 if align > 2
cw = number_image.width / 10
ch = number_image.height / frame_max
h = ch * frame_index
number = value.abs.to_s.split(//)
case align
when 0
plus_x = (-cw + space) * number.size
when 1
plus_x = (-cw + space) * number.size
plus_x /= 2
when 2
plus_x = 0
end
for r in 0..number.size - 1
number_abs = number[r].to_i
number_rect = Rect.new(cw * number_abs, h, cw, ch)
self.contents.blt(plus_x + x + ((cw - space) * r), y , number_image, number_rect)
end
number_image.dispose
end
#--------------------------------------------------------------------------
# Draw_Xas_Item
#--------------------------------------------------------------------------
def draw_xas_item(x,y)
item_lay = RPG::Cache.windowskin("XAS_W_Item")
cw = item_lay.width
ch = item_lay.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 145 , y - ch + 18,item_lay, src_rect)#-position
item = $data_items[$game_system.xas_item_id]
number = $game_party.item_number(item.id)
if $game_system.xas_item_id != 0
if number > 0
opa = 255
cor = Color.new(255,255,150,255)
else
opa = 125
cor = Color.new(255,100,100,155)
end
self.contents.font.size = 16
self.contents.font.name = XAS_HUD::FONT_NAME
self.contents.font.color = cor
self.contents.font.bold = true
bitmap = RPG::Cache.icon(item.icon_name) rescue nil
self.contents.blt(x + 158, y - 20, bitmap, Rect.new(0, 0, 24, 24), opa) rescue nil
draw_picture_number(x + 170,y + 1,number, "XAS_Item_Number",1,0,0,0)
else
draw_picture_number(x + 170,y + 1,0, "XAS_Item_Number",1,0,0,0)
end
item_lay.dispose
end
#--------------------------------------------------------------------------
# Draw_Xas_Skill
#--------------------------------------------------------------------------
def draw_xas_skill(x, y)
skill_lay = RPG::Cache.windowskin("XAS_W_Skill")
cw = skill_lay.width
ch = skill_lay.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 112 , y - ch + 18,skill_lay, src_rect)
@actor = $game_party.actors[0]
skill = $data_skills[$game_system.xas_skill_id.to_i]
if skill == nil
self.contents.font.size = 16
self.contents.font.name = XAS_HUD::FONT_NAME
self.contents.font.bold = true
self.contents.font.color = Color.new(255,100,100,155)
self.contents.draw_hemming_text(x + 7, y + 55, 40, 32, "0", 1)
self.contents.font.color = Color.new(50,255,150,255)
self.contents.draw_hemming_text(x - 3, y + 40, 60, 32, $data_system.words.sp, 1)
return
end
bitmap = RPG::Cache.icon(skill.icon_name)
if @actor.sp >= skill.sp_cost
opa = 255
cor = Color.new(155,255,250,255)
else
opa = 125
cor = Color.new(255,100,100,155)
end
self.contents.font.size = 16
self.contents.font.name = XAS_HUD::FONT_NAME
self.contents.font.bold = true
self.contents.blt(x + 124, y - 22, bitmap, Rect.new(0, 0, 24, 24), opa)
draw_picture_number(x + 140,y + 1,skill.sp_cost, "XAS_MP_Number",1,0,0,0)
skill_lay.dispose
end
#--------------------------------------------------------------------------
# Draw Equip Map
#--------------------------------------------------------------------------
def draw_equip_map(item, x, y)
if item == nil
return
end
bitmap = RPG::Cache.icon(item.icon_name)
self.contents.blt(x + 3, y + 34, bitmap, Rect.new(0, 0, 24, 24))
bitmap.dispose
end
#--------------------------------------------------------------------------
# Draw Mequip +++ EDIT +++
#--------------------------------------------------------------------------
def draw_mequip(x, y)
actor = $game_party.actors[0]
mequip = RPG::Cache.windowskin("Mequip")
cw = mequip.width
ch = mequip.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x - 46 , y - ch + 45 ,mequip, src_rect)#default 43=0, 85=65 add 70
@data = []
@data.push($data_weapons[@actor.weapon_id])
@data.push($data_armors[@actor.armor1_id])
#-------insert - to show following items on Mequip--------------------------
@data.push($data_armors[@actor.armor2_id])
@data.push($data_armors[@actor.armor3_id])
@data.push($data_armors[@actor.armor4_id])
draw_equip_map(@data[0], 32 * 0, -20)#icon positions 20 = Y vertical position
draw_equip_map(@data[1], 32 * 1, -20)
draw_equip_map(@data[2], 32 * 2, -20)
draw_equip_map(@data[3], 32 * 3, -20)
draw_equip_map(@data[4], 32 * 4, -20)
#------done insert
#draw_equip_map(@data[0], x, y)
#draw_equip_map(@data[1], 64 + x, y)
weapon_id = actor.weapon_id
weapon_tool_id = XAS_SKILL::WEAPON_ID_TOOL[weapon_id]
weapon_item = XAS::ITEM_COST[weapon_tool_id]
armor_id = actor.armor1_id
armor_tool_id = XAS_SKILL::SHIELD_ID_TOOL[armor_id]
armor_item = XAS::ITEM_COST[armor_tool_id]
self.contents.font.name = XAS_HUD::FONT_NAME
number = $game_party.item_number(weapon_item)
number2 = $game_party.item_number(armor_item)
if XAS::ITEM_COST.include?(weapon_tool_id)
draw_picture_number(x + 20,y + 55,number, "XAS_Item_Number",1,0,0,0)
end
if XAS::ITEM_COST.include?(armor_tool_id)
draw_picture_number(x + 85,y + 55,number2, "XAS_Item_Number",1,0,0,0)
end
mequip.dispose
end
end
#===============================================================================
# ■ Window Skill
#===============================================================================
class Window_Skill < Window_Selectable
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 0...@actor.skills.size
skill = $data_skills[@actor.skills[i]]
if $mog_rgss_xas_extra_skill != nil and MOG::EX_ELEMENT_TYPE == true
if skill != nil and not skill.element_set.include?($data_system.elements.index("Extra Skill"))
@data.push(skill)
end
else
if skill != nil
@data.push(skill)
end
end
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 32, row_max * 32)
for i in 0...@item_max
draw_item(i)
end
end
end
end
#===============================================================================
# Xas Tool Hud
#===============================================================================
class Xas_Tool_Hud < Window_Base
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize
super(0, 0, 300, 100)
self.contents = Bitmap.new(width - 32, height - 32)
self.windowskin = RPG::Cache.windowskin("001-Blue01")
self.opacity = 0
self.z = 5001
@actor = $game_party.actors[0]
if @actor != nil
@old_item_id = $game_system.xas_item_id
@old_item_number = $game_party.item_number(@old_item_id)
@old_skill_id = $game_system.xas_skill_id
@old_weapon_id = @actor.weapon_id
@old_armor_id = @actor.armor1_id
@weapon_id = @actor.weapon_id
@weapon_tool_id = XAS_SKILL::WEAPON_ID_TOOL[@weapon_id]
@weapon_item = XAS::ITEM_COST[@weapon_tool_id]
@armor_id = @actor.armor1_id
@armor_tool_id = XAS_SKILL::SHIELD_ID_TOOL[@armor_id]
@armor_item = XAS::ITEM_COST[@armor_tool_id]
skill_id = $game_system.xas_skill_id
skill = skill_id == nil ? nil : $data_skills[skill_id]
if $game_system.xas_skill_id == nil or
$game_system.xas_skill_id == 0
sp_cost = 0
else
sp_cost = skill.sp_cost
end
if @actor.sp < sp_cost
@sp = 0
else
@sp = 1
end
@refresh = @sp
if XAS::ITEM_COST.include?(@weapon_tool_id)
@old_item_wp_id = $game_party.item_number(@weapon_item)
end
if XAS::ITEM_COST.include?(@weapon_tool_id)
@old_item_am_id = $game_party.item_number(@armor_item)
end
refresh
end
end
#--------------------------------------------------------------------------
# Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.size = 16
self.contents.font.name = "Georgia"
self.contents.font.bold = true
draw_xas_item(5,35)
draw_xas_skill(70,35)
draw_mequip(45,0)
@weapon_id = @actor.weapon_id
@weapon_tool_id = XAS_SKILL::WEAPON_ID_TOOL[@weapon_id]
@weapon_item = XAS::ITEM_COST[@weapon_tool_id]
@armor_id = @actor.armor1_id
@armor_tool_id = XAS_SKILL::SHIELD_ID_TOOL[@armor_id]
@armor_item = XAS::ITEM_COST[@armor_tool_id]
if XAS::ITEM_COST.include?(@weapon_tool_id)
@old_item_wp_id = $game_party.item_number(@weapon_item)
end
if XAS::ITEM_COST.include?(@weapon_tool_id)
@old_item_am_id = $game_party.item_number(@armor_item)
end
@old_item_id = $game_system.xas_item_id
@old_item_number = $game_party.item_number(@old_item_id)
@old_skill_id = $game_system.xas_skill_id
@old_weapon_id = @actor.weapon_id
@old_armor_id = @actor.armor1_id
@refresh = @sp
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
def update
@actor = $game_party.actors[0]
if @actor == nil
return false
end
if XAS_HUD::FADE == true
x = ($game_player.real_x - $game_map.display_x) / 4
y = ($game_player.real_y - $game_map.display_y) / 4
hud_size_x = 150
hud_size_y = 100
oc_range_x = hud_size_x + XAS_HUD::TOOL_HUD_X
oc_range_y = hud_size_y + XAS_HUD::TOOL_HUD_Y
if x < oc_range_x and x > XAS_HUD::TOOL_HUD_X - 5 and
y > XAS_HUD::TOOL_HUD_Y and y < oc_range_y
self.contents_opacity -= 10 if self.contents_opacity > 120
else
self.contents_opacity += 10 if self.contents_opacity < 255
end
end
@weapon_item = XAS::ITEM_COST[@weapon_tool_id]
@armor_tool_id = XAS_SKILL::SHIELD_ID_TOOL[@armor_id]
skill_id = $game_system.xas_skill_id
skill = skill_id == nil ? nil : $data_skills[skill_id]
if $game_system.xas_skill_id == nil or
$game_system.xas_skill_id == 0
sp_cost = 0
else
sp_cost = skill.sp_cost
end
if @actor.sp < sp_cost
@sp = 0
else
@sp = 1
end
if (XAS::ITEM_COST.include?(@weapon_tool_id) and @old_item_wp_id != nil and
@old_item_wp_id != $game_party.item_number(@weapon_item)) or
(XAS::ITEM_COST.include?(@weapon_tool_id) and @old_item_am_id != nil and
@old_item_am_id != $game_party.item_number(@armor_item))
refresh
elsif @old_item_id != $game_system.xas_item_id or
@old_skill_id != $game_system.xas_skill_id or
@old_weapon_id != @actor.weapon_id or
@old_armor_id != @actor.armor1_id or
@old_item_number != $game_party.item_number(@old_item_id) or
@refresh != @sp
refresh
end
end
end
#===============================================================================
# ■ Scene_Map
#===============================================================================
class Scene_Map
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
alias xas_hud_main main
def main
@actor = $game_party.actors[0]
@windows_hud2 = Xas_Tool_Hud.new
@windows_hud2.x = XAS_HUD::TOOL_HUD_X
@windows_hud2.y = XAS_HUD::TOOL_HUD_Y
if $game_switches[XAS_HUD::DISABLE_HUD_SWITCH] == true
@windows_hud2.visible = false
else
@windows_hud2.visible = true
end
xas_hud_main
@windows_hud2.dispose
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
alias xas_hud_update update
def update
xas_hud_update
if @actor == nil
return false
end
if $game_switches[XAS_HUD::DISABLE_HUD_SWITCH] == true
@windows_hud2.visible = false
else
@windows_hud2.visible = true
end
@windows_hud2.update
end
end
################################################################################
################################################################################
#===============================================================================
# QUICK MENU SYSYEM
#===============================================================================
################################################################################
#==============================================================================
# ■ Quick_Menu_Selectable
#==============================================================================
class Quick_Menu_Selectable < Window_Base
attr_reader :index
attr_reader :help_window
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize(x, y, width, height)
super(x, y, width, height)
@item_max = 1
@column_max = 1
@index = -1
end
#--------------------------------------------------------------------------
# index
#--------------------------------------------------------------------------
def index=(index)
@index = index
if self.active and @help_window != nil
update_help
end
update_cursor_rect
end
#--------------------------------------------------------------------------
# row_max
#--------------------------------------------------------------------------
def row_max
return (@item_max + @column_max - 1) / @column_max
end
#--------------------------------------------------------------------------
# top_row
#--------------------------------------------------------------------------
def top_row
return self.oy / 40
end
#--------------------------------------------------------------------------
# top_row
#--------------------------------------------------------------------------
def top_row=(row)
if row < 0
row = 0
end
if row > row_max - 1
row = row_max - 1
end
self.oy = row * 40
end
#--------------------------------------------------------------------------
# page_row_max
#--------------------------------------------------------------------------
def page_row_max
return (self.height - 40) / 40
end
#--------------------------------------------------------------------------
# page_item_max
#--------------------------------------------------------------------------
def page_item_max
return page_row_max * @column_max
end
#--------------------------------------------------------------------------
#help_window
#--------------------------------------------------------------------------
def help_window=(help_window)
@help_window = help_window
if self.active and @help_window != nil
update_help
end
end
#--------------------------------------------------------------------------
# update_cursor_rect
#--------------------------------------------------------------------------
def update_cursor_rect
if @index < 0
self.cursor_rect.empty
return
end
row = @index / @column_max
if row < self.top_row
self.top_row = row
end
if row > self.top_row + (self.page_row_max - 1)
self.top_row = row - (self.page_row_max - 1)
end
cursor_width = self.width / @column_max - 32
x = @index % @column_max * 40
y = @index / @column_max * 40 - self.oy
self.cursor_rect.set(x, y, 40, 40)
end
#--------------------------------------------------------------------------
# update
#--------------------------------------------------------------------------
def update
super
if self.active and @item_max > 0 and @index >= 0
if Input.repeat?(Input::DOWN)
if (@column_max == 1 and Input.trigger?(Input::DOWN)) or
@index < @item_max - @column_max
$game_system.se_play($data_system.cursor_se)
@index = (@index + @column_max) % @item_max
end
end
if Input.repeat?(Input::UP)
if (@column_max == 1 and Input.trigger?(Input::UP)) or
@index >= @column_max
$game_system.se_play($data_system.cursor_se)
@index = (@index - @column_max + @item_max) % @item_max
end
end
if Input.repeat?(Input::RIGHT)
if @column_max >= 2 and @index < @item_max - 1
$game_system.se_play($data_system.cursor_se)
@index += 1
end
end
if Input.repeat?(Input::LEFT)
if @column_max >= 2 and @index > 0
$game_system.se_play($data_system.cursor_se)
@index -= 1
end
end
end
if self.active and @help_window != nil
update_help
end
update_cursor_rect
end
end
#==============================================================================
# ■ Quick_Window_Skill
#==============================================================================
class Quick_Window_Skill < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# Initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(190, 128, 280, 250)
self.opacity = 160
@actor = actor
self.z = 5001
@column_max = 6
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# Skill
#--------------------------------------------------------------------------
def skill
return @data[self.index]
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 0...@actor.skills.size
skill = $data_skills[@actor.skills[i]]
if $mog_rgss_xas_extra_skill != nil and MOG::EX_ELEMENT_TYPE == true
if skill != nil and not skill.element_set.include?($data_system.elements.index("Extra Skill"))
@data.push(skill)
end
else
if skill != nil
@data.push(skill)
end
end
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 40, row_max * 40)
for i in 0...@item_max
draw_item(i)
end
end
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item(index)
skill = @data[index]
if @actor.skill_can_use?(skill.id)
self.contents.font.color = normal_color
else
self.contents.font.color = disabled_color
end
x = 8 + index % 6 * 40
y = 4 + index / 6 * 40
rect = Rect.new(x, y, self.width / @column_max - 40, 40)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
bitmap = RPG::Cache.icon(skill.icon_name)
opacity = self.contents.font.color == normal_color ? 255 : 128
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.skill == nil ? "" : skill.name + " (" + $data_system.words.sp + " " + skill.sp_cost.to_s + ") - " + self.skill.description)
end
end
#==============================================================================
# ■ Quick_Window_Item
#==============================================================================
class Quick_Window_Item < Quick_Menu_Selectable
#--------------------------------------------------------------------------
# initialize
#--------------------------------------------------------------------------
def initialize(actor)
super(190, 128, 280, 250)
self.opacity = 160
@actor = actor
self.z = 5001
@column_max = 6
refresh
self.index = 0
end
#--------------------------------------------------------------------------
# item
#--------------------------------------------------------------------------
def item
return @data[self.index]
end
#--------------------------------------------------------------------------
# refresh
#--------------------------------------------------------------------------
def refresh
if self.contents != nil
self.contents.dispose
self.contents = nil
end
@data = []
for i in 1...$data_items.size
if $game_party.item_number(i) > 0 and
$game_party.item_can_use?(i)
@data.push($data_items[i])
end
end
unless $game_temp.in_battle
armor_set = $data_classes[@actor.class_id].armor_set
weapon_set = $data_classes[@actor.class_id].weapon_set
for i in 1...$data_weapons.size
if $game_party.weapon_number(i) > 0 and
weapon_set.include?(i)
@data.push($data_weapons[i])
end
end
for i in 1...$data_armors.size
if $game_party.armor_number(i) > 0 and
$data_armors[i].kind == 0 and
armor_set.include?(i)
@data.push($data_armors[i])
end
end
end
@item_max = @data.size
if @item_max > 0
self.contents = Bitmap.new(width - 40, row_max * 40)
for i in 0...@item_max
draw_item(i)
end
end
end
#--------------------------------------------------------------------------
# draw_item
#--------------------------------------------------------------------------
def draw_item(index)
item = @data[index]
case item
when RPG::Item
number = $game_party.item_number(item.id)
when RPG::Weapon
number = $game_party.weapon_number(item.id)
when RPG::Armor
number = $game_party.armor_number(item.id)
end
if (item.is_a?(RPG::Item) and
$game_party.item_can_use?(item.id)) or
item.is_a?(RPG::Weapon) or
$data_armors[item.id].kind == 0
self.contents.font.color = normal_color
else
self.contents.font.color = disabled_color
end
x = 8 + index % 6 * 40
y = 4 + index / 6 * 40
rect = Rect.new(x, y, self.width / @column_max - 40, 40)
self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
bitmap = RPG::Cache.icon(item.icon_name)
opacity = self.contents.font.color == normal_color ? 255 : 128
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
case item
when RPG::Item
self.contents.font.size = 16
self.contents.draw_hemming_text(x + 0, y + 12, 24, 32, number.to_s, 1)
end
end
#--------------------------------------------------------------------------
# update_help
#--------------------------------------------------------------------------
def update_help
@help_window.set_text(self.item == nil ? "" : item.name + " - " + self.item.description)
end
end
#==============================================================================
# ■ QUICK MENU ITEM
#==============================================================================
class Quick_Menu_Item
# initialize --------------------------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
#--------------------------------------------------------------------------
# Main
#--------------------------------------------------------------------------
def main
@actor = $game_party.actors[@actor_index]
@help_window = Window_Help.new
@help_window.opacity = 0
@help_window.x = 220
@help_window.y = 64
@help_window.opacity = 0
@help_window.z = 5001
@help_window.contents_opacity = 0
@item_window = Quick_Window_Item.new(@actor)
@item_window.x = 0
@item_window.y = 128
@item_window.opacity = 0
@item_window.contents_opacity = 0
@item_window.help_window = @help_window
@spriteset = Spriteset_Map.new
@windows_hud2 = Xas_Tool_Hud.new
@windows_hud2.x = XAS_HUD::TOOL_HUD_X
@windows_hud2.y = XAS_HUD::TOOL_HUD_Y
@text = Sprite.new
@text.bitmap = Bitmap.new(640,64)
@text.z = 5005
@text.bitmap.font.name = "Georgia"
@text.bitmap.font.size = 20
@text.bitmap.font.bold = true
@text.bitmap.font.italic = true
@text.bitmap.font.color.set(255, 255, 255,220)
if $mog_rgss_xas_extra_skill != nil
@text.bitmap.draw_hemming_text(0, 0, 160, 40, "<- EX SKILL (L) ",1)
else
@text.bitmap.draw_hemming_text(0, 0, 140, 40, "<- SKILL (L) ",1)
end
@text.bitmap.draw_hemming_text(495, 0, 160, 40, "(R) SKILL -> ",1)
@text.y = 240
@text2 = Sprite.new
@text2.bitmap = Bitmap.new(640,128)
@text2.z = 5005
@text2.bitmap.font.name = "Georgia"
@text2.bitmap.font.size = 28
@text2.bitmap.font.bold = true
@text2.bitmap.font.italic = true
@text2.bitmap.font.color.set(155, 255, 255,255)
@text2.bitmap.draw_hemming_text(270, 0, 120, 40, "ITEM",1)
@text2.y = 360
@text_float = 0
if $game_switches[XAS_HUD::DISABLE_HUD_SWITCH] == true
@windows_hud2.visible = false
else
@windows_hud2.visible = true
end
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
for i in 0..10
@item_window.x -= 25
@item_window.opacity -= 15
@item_window.contents_opacity -= 25
@help_window.x += 25
@help_window.opacity -= 15
@help_window.contents_opacity -= 25
Graphics.update
end
Graphics.freeze
@help_window.dispose
@item_window.dispose
@spriteset.dispose
@windows_hud2.dispose
@text.bitmap.dispose
@text.dispose
@text = nil
@text2.bitmap.dispose
@text2.dispose
@text2 = nil
end
#--------------------------------------------------------------------------
# Update
#--------------------------------------------------------------------------
def update
@help_window.update
@item_window.update
text_float_update
if @item_window.x < 190
@item_window.x += 25
@item_window.opacity += 5
@item_window.contents_opacity += 15
@help_window.x -= 25
@help_window.opacity += 5
@help_window.contents_opacity += 15
elsif @item_window.x >= 190
@item_window.x = 190
@item_window.opacity = 160
@item_window.contents_opacity = 255
@help_window.x = 0
@help_window.opacity = 160
@help_window.contents_opacity = 255
end
if @item_window.active
update_item
return
end
end
#--------------------------------------------------------------------------
# Text Float Update
#--------------------------------------------------------------------------
def text_float_update
if @text_float == 0
@text.oy += 1
@text_float = 1 if @text.oy > 10
else
@text.oy -= 1
@text_float = 0 if @text.oy < -10
end
end
#--------------------------------------------------------------------------
# Cancel
#--------------------------------------------------------------------------
def cancel
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
end
#--------------------------------------------------------------------------
# Menu Change
#--------------------------------------------------------------------------
def menu_change
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
$scene = Quick_Menu_Skill.new
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
if $mog_rgss_xas_extra_skill != nil
$scene = Quick_Menu_Extra_Skill.new
else
$scene = Quick_Menu_Skill.new
end
return
end
end
#--------------------------------------------------------------------------
# Update_item
#--------------------------------------------------------------------------
def update_item
cancel
menu_change
if Input.trigger?(Input::C)
@item = @item_window.item
if @item.is_a?(RPG::Weapon)
@actor.equip(0,@item.id)
@windows_hud2.refresh
@item_window.refresh
$game_system.se_play($data_system.equip_se)
elsif @item.is_a?(RPG::Armor)
if $data_armors[@item.id].kind == 0
@actor.equip(1,@item.id)
end
@item_window.refresh
@windows_hud2.refresh
$game_system.se_play($data_system.equip_se)
else
item_id = @item.id
item_tool_id = XAS::XASITEM_ID[@item.id]
if item_tool_id != nil
unless $game_party.item_can_use?(@item.id)
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.equip_se)
$game_system.xas_item_id = @item.id
@windows_hud2.refresh
end
return
end
end
end
end
#==============================================================================
# ■ QUICK MENU SKILL
#==============================================================================
class Quick_Menu_Skill
# initialize --------------------------------
def initialize(actor_index = 0, equip_index = 0)
@actor_index = actor_index
end
#--------------------------------------------------------------------------
# main
#--------------------------------------------------------------------------
def main
@actor = $game_party.actors[@actor_index]
@help_window = Window_Help.new
@help_window.opacity = 0
@help_window.x = 220
@help_window.y = 64
@help_window.z = 5001
@help_window.opacity = 0
@help_window.contents_opacity = 0
@skill_window = Quick_Window_Skill.new(@actor)
@skill_window.x = 0
@skill_window.y = 128
@skill_window.opacity = 0
@skill_window.contents_opacity = 0
@skill_window.help_window = @help_window
@spriteset = Spriteset_Map.new
@windows_hud2 = Xas_Tool_Hud.new
@windows_hud2.x = XAS_HUD::TOOL_HUD_X
@windows_hud2.y = XAS_HUD::TOOL_HUD_Y
@text = Sprite.new
@text.bitmap = Bitmap.new(640,64)
@text.z = 5005
@text.bitmap.font.name = "Georgia"
@text.bitmap.font.size = 20
@text.bitmap.font.bold = true
@text.bitmap.font.italic = true
@text.bitmap.font.color.set(255, 255, 255,220)
@text.bitmap.draw_hemming_text(0, 0, 120, 40, "<- ITEM (L) ",1)
if $mog_rgss_xas_extra_skill != nil
@text.bitmap.draw_hemming_text(485, 0, 160, 40, "(R) EX SKILL -> ",1)
else
@text.bitmap.draw_hemming_text(495, 0, 160, 40, "(R) ITEM -> ",1)
end
@text.y = 240
@text2 = Sprite.new
@text2.bitmap = Bitmap.new(640,128)
@text2.z = 5005
@text2.bitmap.font.name = "Georgia"
@text2.bitmap.font.size = 28
@text2.bitmap.font.bold = true
@text2.bitmap.font.italic = true
@text2.bitmap.font.color.set(155, 255, 255,255)
@text2.bitmap.draw_hemming_text(270, 0, 120, 40, "Skill",1)
@text2.y = 360
@text_float = 0
if $game_switches[XAS_HUD::DISABLE_HUD_SWITCH] == true
@windows_hud2.visible = false
else
@windows_hud2.visible = true
end
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
for i in 0..10
@skill_window.x -= 25
@skill_window.opacity -= 15
@skill_window.contents_opacity -= 25
@help_window.x += 25
@help_window.opacity -= 15
@help_window.contents_opacity -= 25
Graphics.update
end
Graphics.freeze
@help_window.dispose
@skill_window.dispose
@spriteset.dispose
@windows_hud2.dispose
@text.bitmap.dispose
@text.dispose
@text = nil
@text2.bitmap.dispose
@text2.dispose
@text2 = nil
end
#--------------------------------------------------------------------------
# update
#--------------------------------------------------------------------------
def update
@help_window.update
@skill_window.update
text_float_update
if @skill_window.x < 190
@skill_window.x += 25
@skill_window.opacity += 5
@skill_window.contents_opacity += 15
@help_window.x -= 25
@help_window.opacity += 5
@help_window.contents_opacity += 15
elsif @skill_window.x >= 190
@skill_window.x = 190
@skill_window.opacity = 160
@skill_window.contents_opacity = 255
@help_window.x = 0
@help_window.opacity = 160
@help_window.contents_opacity = 255
end
if @skill_window.active
update_skill
return
end
end
#--------------------------------------------------------------------------
# Text Float Update
#--------------------------------------------------------------------------
def text_float_update
if @text_float == 0
@text.oy += 1
@text_float = 1 if @text.oy > 10
else
@text.oy -= 1
@text_float = 0 if @text.oy < -10
end
end
#--------------------------------------------------------------------------
# Cancel
#--------------------------------------------------------------------------
def cancel
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
end
#--------------------------------------------------------------------------
# Menu Change
#--------------------------------------------------------------------------
def menu_change
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
$scene = Quick_Menu_Item.new
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
if $mog_rgss_xas_extra_skill != nil
$scene = Quick_Menu_Extra_Skill.new
else
$scene = Quick_Menu_Item.new
end
return
end
end
#--------------------------------------------------------------------------
# Update Skill
#--------------------------------------------------------------------------
def update_skill
cancel
menu_change
if Input.trigger?(Input::C)
@skill = @skill_window.skill
if @skill == nil or not @actor.skill_can_use?(@skill.id)
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.equip_se)
$game_system.xas_skill_id = @skill.id
@windows_hud2.refresh
return
end
end
end
################################################################################
@weapon - ah progress, did you update the weapon module too?
check the tool event, make sure repeat is unchecked
in the events move route
Administrator
Show Signature
ACTIVATED
ACTIVATED
ACTIVATED
profile
ebonyzack
profile
@exgtraskills
I still get that stupid eror when I press Q -.-. thanks though ;/.
@weapon
hmm, I think that's where I went wrong lol.
I still get that stupid eror when I press Q -.-. thanks though ;/.
@weapon
hmm, I think that's where I went wrong lol.
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
Administrator
profile
G@MeF@Ce
profile
@extra skills - F9 > States tab = take a look at the 26th state
should be Mute > the only thing checked should be Mute in the
States change:
~ are you using any other script that may possibly cause this error?
do a complete search for "MUTE_ID"
F11 > SHIFT + CTRL + F = type MUTE_ID in the search box
which scripts does MUTE_ID appear in?
@weapon ~ so it's working?? ^,^
should be Mute > the only thing checked should be Mute in the
States change:
~ are you using any other script that may possibly cause this error?
do a complete search for "MUTE_ID"
F11 > SHIFT + CTRL + F = type MUTE_ID in the search box
which scripts does MUTE_ID appear in?
@weapon ~ so it's working?? ^,^
Administrator
Show Signature
Go to page : 1, 2, 3