Peco92 Posted March 4, 2011 Share Posted March 4, 2011 (edited) Skill MenuDescrizioneScript che permette di classificare le skill praticamente in qualsiasi modo si vogliaAutorePeco92(ho preso spunto da un menu per oggetti realizzato da Tio)Allegatiun piccolo screen: http://img850.imageshack.us/img850/6150/aaat.jpgquesto è lo script: # -> Questo script è stato creato da Ino (Peco92) prendendo spunto # da un menu ad oggetti realizzato da Tio. ### Ora vi illustrerò come utilizzarlo, allora per prima cosa questo # script classifica le magie in base alle loro capacità. Nel # Database -> Skill scegliete una magia e noterete che ha tante # caratteristiche come il costo mp il danno eccetera.. # Io le ho divise per la loro usabilità (occasion), ma ora vi # elenco le possibili classificazioni: # occasion (Usabile in) # power (Danno) # sp_cost (costo) # atk_f (attacco) # eva_f (evasione) # str_f (Forza) # dex_f (Destrezza) # agi_f (Agilità) # int_f (Intelligenza) # hit (Precisione) # pdef_f (Difesa fisica) # mdef_f (Difesa magica) # variance (Variazione) # Per occasion la prima scelta equivale a 0 la seconda a 1 ed ecc. # Comunque per classificarle dovete scegliere un tipo di magia: ad # esempio curative, vi basta scrivere: # if skill.power < 0 # Allora per far si che lo script capisca l'ugualianza bisogna mettere # 2 uguali == . # allora: == ugualianza # != diverso # < minore # > maggiore # <= minore o uguale # >= maggiore o uguale # Ora andate ad una di queste righe per modificare la classificazione: # 187, 261, 335, 410. # Per fare in modo che una magia sia classificata per due qualità # basta aggiungere un and in questo modo # if skill.occasion == 0 and skill.power < 0 # In pratica lo script ti classifica le skill per le loro capacità # puoi ad esempio mettere a tutte le magie elementali una agilità # pari ad 1 e nello script scriverai: if skill.agi_f == 1 . così # quando sceglierai nel menu magie -> elementali ti appariranno solo # di quel tipo. # é tutto chiaro? # Un'altra cosa andate alla riga 569 per modificare il nome delle scelte # Boh.. finito, se avete problemi non esitate a chiedere!! # Ciaoooo!!! =D #### Help window ######################################################## class Window_Help_Skill < Window_Base def initialize super(0, 0, 640, 64) self.contents = Bitmap.new(width - 32, height - 32) self.back_opacity = 255 end def set_text(text, align = 0) if text != @text or align != @align self.contents.clear self.contents.font.color = normal_color self.contents.draw_text(4, 0, self.width - 40, 32, text, align) @text = text @align = align @actor = nil end self.visible = true end def set_actor(actor) if actor != @actor self.contents.clear draw_actor_name(actor, 4, 0) draw_actor_state(actor, 140, 0) draw_actor_hp(actor, 284, 0) draw_actor_sp(actor, 460, 0) @actor = actor @text = nil self.visible = true end end def set_enemy(enemy) text = enemy.name state_text = make_battler_state_text(enemy, 112, false) if state_text != "" text += " " + state_text end set_text(text, 1) end end ################################################## End Help window ########## ############################################################################# #### Target window ########################################################## class Window_Target_Skill < Window_Selectable def initialize super(0, 0, 320, 416) self.index = 0 self.active = false self.z += 10 self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Arial" self.contents.font.size = 24 self.back_opacity = 255 @item_max = $game_party.actors.size refresh end def refresh self.contents.clear for i in 0...$game_party.actors.size x = 4 y = i * 95 actor = $game_party.actors[i] draw_actor_graphic(actor, x + 10, y + 75) draw_actor_name(actor, x, y) draw_actor_class(actor, x + 129, y) draw_actor_level(actor, x + 25, y + 32) draw_actor_state(actor, x + 25, y + 64) draw_actor_hp(actor, x + 137, y + 32) draw_actor_sp(actor, x + 137, y + 64) end end def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 95, self.width - 32, 96) end end end ################################################ End Target window ########## ############################################################################# #### Always window ########################################################## class Window_Skill_Always < Window_Selectable def initialize(actor) super(0, 128, 320, 352) @actor = actor @column_max = 1 self.active = false self.visible = false self.back_opacity = 5 refresh self.index = 0 if $game_temp.in_battle self.y = 64 self.height = 256 self.back_opacity = 160 end end def skill return @data[self.index] end 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 skill.occasion == 0 @data.push(skill) 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 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 = 4 + index % 1 * (288 + 32) y = index / 1 * 32 rect = Rect.new(x, y, self.width / @column_max - 32, 32) 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) self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0) self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2) end def update_help @help_window.set_text(self.skill == nil ? "" : self.skill.description) end end ################################################ End Always window ########## ############################################################################# #### In-Battle window ####################################################### class Window_Skill_In_Battle < Window_Selectable def initialize(actor) super(0, 128, 320, 352) @actor = actor @column_max = 1 self.active = false self.visible = false self.back_opacity = 5 refresh self.index = 0 if $game_temp.in_battle self.y = 64 self.height = 256 self.back_opacity = 160 end end def skill return @data[self.index] end 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 skill.occasion == 1 #Only in Battle @data.push(skill) 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 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 = 4 + index % 1 * (288 + 32) y = index / 1 * 32 rect = Rect.new(x, y, self.width / @column_max - 32, 32) 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) self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0) self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2) end def update_help @help_window.set_text(self.skill == nil ? "" : self.skill.description) end end ############################################# End In-Battle window ########## ############################################################################# #### Out-Battle window ###################################################### class Window_Skill_Out_Battle < Window_Selectable def initialize(actor) super(0, 128, 320, 352) @actor = actor @column_max = 1 self.active = false self.visible = false self.back_opacity = 5 refresh self.index = 0 if $game_temp.in_battle self.y = 64 self.height = 256 self.back_opacity = 160 end end def skill return @data[self.index] end 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 skill.occasion == 2 #Only in Battle @data.push(skill) 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 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 = 4 + index % 1 * (288 + 32) y = index / 1 * 32 rect = Rect.new(x, y, self.width / @column_max - 32, 32) 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) self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0) self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2) end def update_help @help_window.set_text(self.skill == nil ? "" : self.skill.description) end end ############################################ End Out-Battle window ########## ############################################################################# #### Never window ########################################################### class Window_Skill_Never < Window_Selectable def initialize(actor) super(0, 128, 320, 352) @actor = actor @column_max = 1 self.active = false self.visible = false self.back_opacity = 5 refresh self.index = 0 if $game_temp.in_battle self.y = 64 self.height = 256 self.back_opacity = 160 end end def skill return @data[self.index] end 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 skill.occasion == 3 #Only in Battle @data.push(skill) 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 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 = 4 + index % 1 * (288 + 32) y = index / 1 * 32 rect = Rect.new(x, y, self.width / @column_max - 32, 32) 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) self.contents.draw_text(x + 28, y, 204, 32, skill.name, 0) self.contents.draw_text(x + 232, y, 48, 32, skill.sp_cost.to_s, 2) end def update_help @help_window.set_text(self.skill == nil ? "" : self.skill.description) end end ################################################# End Never window ########## ############################################################################# #### Base window ############################################################ class Window_Base < Window def draw_sp_chara_b(actor, x, y) self.contents.draw_text(x + 60, y, 32, 32, $data_system.words.sp + ":") self.contents.draw_text(x + 90, y, 48, 32, actor.sp.to_s, 1)#, 2) self.contents.draw_text(x + 128, y, 12, 32, "/", 1) self.contents.draw_text(x + 138, y, 48, 32, actor.maxsp.to_s) end def draw_actor_name_b(actor, x, y) self.contents.font.size = 24 self.contents.font.color = normal_color p = contents.text_size(actor.name).width self.contents.draw_text(x, y, p, 32, actor.name) self.contents.font.color = normal_color end def draw_sp_chara(actor, x, y, width = 144) self.contents.font.color = system_color self.contents.draw_text(x, y, 32, 32, $data_system.words.sp) if width - 32 >= 108 sp_x = x + width - 108 flag = true elsif width - 32 >= 48 sp_x = x + width - 48 flag = false end sp_x = sp_x - 15 self.contents.font.color = actor.sp == 0 ? knockout_color : actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color self.contents.draw_text(sp_x, y, 48, 32, actor.sp.to_s, 2) if flag self.contents.font.color = normal_color self.contents.draw_text(sp_x + 48, y, 12, 32, "/", 1) self.contents.draw_text(sp_x + 60, y, 48, 32, actor.maxsp.to_s) end end end ################################################## End Base window ########## ############################################################################# #### Chara window ########################################################### class Window_Skill_Chara < Window_Base def initialize(actor) super(0, 64, 320, 64) self.contents = Bitmap.new(width - 32, height - 32) self.back_opacity = 255 @actor = actor @level_up_flags = [false, false, false, false] refresh end def dispose super end def level_up(actor_index) @level_up_flags[actor_index] = true end def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size actor = $game_party.actors[i] actor_x = 4 + 20 draw_actor_graphic(@actor, 13, 45) draw_actor_name(@actor, actor_x, 0) draw_sp_chara(@actor, actor_x + 75 + 65, 0) draw_actor_level(@actor,actor_x + 75, 0) end end def update super if $game_temp.battle_main_phase self.contents_opacity -= 4 if self.contents_opacity > 191 else self.contents_opacity += 4 if self.contents_opacity < 255 end end end ################################################### End Chara window ######## ############################################################################# ############################################################################# ############################################################################# ############################################################################# ############################################################################# ############################################################################# ## Ino's Script #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> #>>>>>>>>>>>>>>>>>>>>>>>>>>> °Scene_Skill° <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< class Scene_Skill def initialize(actor_index = 0, equip_index = 0, menu_index = 0) @actor_index = actor_index @menu_index = menu_index end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Main #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def main s1 = "Always" s2 = "Never" s3 = "Out-Battle" s4 = "In-Battle" @actor = $game_party.actors[@actor_index] @command_window = Window_Command.new(160, [s1, s2, s3, s4,]) @command_window.index = @menu_index @command_window.x = 240 @command_window.y = 120 @command_window.index = 0 @command_window.z = 200 @command_window.back_opacity = 255 @command_window.active = true @dummy_window = Window_Base.new(0, 128, 320, 416 - 64) @dummy_window.back_opacity = 255 @s_al = Window_Skill_Always.new(@actor) @s_i_b = Window_Skill_In_Battle.new(@actor) @s_o_b = Window_Skill_Out_Battle.new(@actor) @s_n = Window_Skill_Never.new(@actor) @chara = Window_Skill_Chara.new(@actor) @help_window = Window_Help_Skill.new @s_al.help_window = @help_window @s_i_b.help_window = @help_window @s_o_b.help_window = @help_window @s_n.help_window = @help_window @target_window = Window_Target_Skill.new @target_window.x = 320 @target_window.y = 64 @target_window.index = -1 Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @help_window.dispose @chara.dispose @s_al.dispose @target_window.dispose @s_n.dispose @s_o_b.dispose @s_i_b.dispose @dummy_window.dispose end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update @help_window.update @s_al.update @target_window.update @command_window.update @s_n.update @s_o_b.update @s_i_b.update if @command_window.active update_command return end if @s_al.active update_s_al return end if @s_n.active update_s_n return end if @s_o_b.active update_s_o_b return end if @s_i_b.active update_s_i_b return end if @target_window.active update_target return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Command #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_command if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.visible = false @command_window.active = false $scene = Scene_Menu.new (1) return end if Input.trigger?(Input::C) @command_window.visible = false @command_window.active = false case @command_window.index when 0 # Always $game_system.se_play($data_system.decision_se) @s_al.visible = true @s_al.active = true @s_al.index = 0 when 1 # Never $game_system.se_play($data_system.decision_se) @s_n.visible = true @s_n.active = true @s_n.index = 0 when 2 # Out-Battle $game_system.se_play($data_system.decision_se) @s_o_b.visible = true @s_o_b.active = true @s_o_b.index = 0 when 3 # In-Battle $game_system.se_play($data_system.decision_se) @s_i_b.visible = true @s_i_b.active = true @s_i_b.index = 0 end end if Input.trigger?(Input::R) $game_system.se_play($data_system.cursor_se) @actor_index += 1 @actor_index %= $game_party.actors.size @command_window.visible = false @command_window.active = false @command_window.refresh @chara.refresh $scene = Scene_Skill.new(@actor_index) update_nad return end if Input.trigger?(Input::L) $game_system.se_play($data_system.cursor_se) @actor_index += $game_party.actors.size - 1 @actor_index %= $game_party.actors.size @command_window.visible = false @command_window.active = false @command_window.refresh @chara.refresh $scene = Scene_Skill.new(@actor_index) update_nad return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Nad ( per cambiare personaggio) =) #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_nad if Input.trigger?(Input::B) @command_window.index = @command_window.index @command_window.active = true @command_window.visible = true end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Always #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_s_al if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.index = @command_window.index @command_window.active = true @command_window.visible = true @s_al.active = false @s_al.visible = false @s_al.index = -1 @help_window.set_text("") @dummy_window.visible = true return end if Input.trigger?(Input::C) @skill = @s_al.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.decision_se) if @skill.scope >= 3 @s_al.active = false @target_window.visible = true @target_window.active = true if @skill.scope == 4 || @skill.scope == 6 @target_window.index = -1 elsif @skill.scope == 7 @target_window.index = @actor_index - 10 else @target_window.index = 0 end else if @skill.common_event_id > 0 $game_temp.common_event_id = @skill.common_event_id $game_system.se_play(@skill.menu_se) @actor.sp -= @skill.sp_cost @s_al.refresh @chara.refresh @target_window.refresh $scene = Scene_Map.new return end end return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Never #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_s_n if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.index = @command_window.index @command_window.active = true @command_window.visible = true @s_n.active = false @s_n.visible = false @s_n.index = -1 @help_window.set_text("") @dummy_window.visible = true return end if Input.trigger?(Input::C) @skill = @s_n.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.decision_se) if @skill.scope >= 3 @s_n.active = false @target_window.visible = true @target_window.active = true if @skill.scope == 4 || @skill.scope == 6 @target_window.index = -1 elsif @skill.scope == 7 @target_window.index = @actor_index - 10 else @target_window.index = 0 end else if @skill.common_event_id > 0 $game_temp.common_event_id = @skill.common_event_id $game_system.se_play(@skill.menu_se) @actor.sp -= @skill.sp_cost @s_n.refresh @target_window.refresh @chara.refresh $scene = Scene_Map.new return end end return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Out Battle #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_s_o_b if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.index = @command_window.index @command_window.active = true @command_window.visible = true @s_o_b.active = false @s_o_b.visible = false @s_o_b.index = -1 @help_window.set_text("") @dummy_window.visible = true return end if Input.trigger?(Input::C) @skill = @s_o_b.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.decision_se) if @skill.scope >= 3 @s_o_b.active = false @target_window.visible = true @target_window.active = true if @skill.scope == 4 || @skill.scope == 6 @target_window.index = -1 elsif @skill.scope == 7 @target_window.index = @actor_index - 10 else @target_window.index = 0 end else if @skill.common_event_id > 0 $game_temp.common_event_id = @skill.common_event_id $game_system.se_play(@skill.menu_se) @actor.sp -= @skill.sp_cost @s_o_b.refresh @target_window.refresh @chara_refresh $scene = Scene_Map.new return end end return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update In Battle #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_s_i_b if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @command_window.index = @command_window.index @command_window.active = true @command_window.visible = true @s_i_b.active = false @s_i_b.visible = false @s_i_b.index = -1 @dummy_window.visible = true @help_window.set_text("") return end if Input.trigger?(Input::C) @skill = @s_i_b.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.decision_se) if @skill.scope >= 3 @s_i_b.active = false @target_window.visible = true @target_window.active = true if @skill.scope == 4 || @skill.scope == 6 @target_window.index = -1 elsif @skill.scope == 7 @target_window.index = @actor_index - 10 else @target_window.index = 0 end else if @skill.common_event_id > 0 $game_temp.common_event_id = @skill.common_event_id $game_system.se_play(@skill.menu_se) @actor.sp -= @skill.sp_cost @s_i_b.refresh @target_window.refresh @chara.refresh $scene = Scene_Map.new return end end return end end #>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> # $ Update Target Window #<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< def update_target if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) unless $game_party.item_can_use?(@item.id) @s_al.refresh end @s_al.active = true @target_window.active = false @target_window.index = -1 return end if Input.trigger?(Input::C) unless @actor.skill_can_use?(@skill.id) $game_system.se_play($data_system.buzzer_se) return end if @target_window.index == -1 used = false for i in $game_party.actors used |= i.skill_effect(@actor, @skill) end end if @target_window.index <= -2 target = $game_party.actors[@target_window.index + 10] used = target.skill_effect(@actor, @skill) end if @target_window.index >= 0 target = $game_party.actors[@target_window.index] used = target.skill_effect(@actor, @skill) end if used $game_system.se_play(@skill.menu_se) @actor.sp -= @skill.sp_cost @s_al.refresh @chara.refresh @target_window.refresh if $game_party.all_dead? $scene = Scene_Gameover.new return end if @skill.common_event_id > 0 $game_temp.common_event_id = @skill.common_event_id $scene = Scene_Map.new return end end unless used $game_system.se_play($data_system.buzzer_se) end return end end end se volete lo potete scaricare da qua:http://www.mediafire...39a4z1lr6gesxlcIstruzioni per l'uso scaricate lo script da qua sopra, è un semplice file txt da 28 kb.e copiatene il contenuto incollandolo sopra allo script main, nominatelo come vi pare.eccovi le istruzioni ### Ora vi illustrerò come utilizzarlo, allora per prima cosa questo# script classifica le magie in base alle loro capacità. Nel# Database -> Skill scegliete una magia e noterete che ha tante# caratteristiche come il costo mp il danno eccetera..# Io le ho divise per la loro usabilità (occasion), ma ora vi# elenco le possibili classificazioni:# occasion (Usabile in)# power (Danno)# sp_cost (costo)# atk_f (attacco)# eva_f (evasione)# str_f (Forza)# dex_f (Destrezza)# agi_f (Agilità)# int_f (Intelligenza)# hit (Precisione)# pdef_f (Difesa fisica)# mdef_f (Difesa magica)# variance (Variazione)# Per occasion la prima scelta equivale a 0 la seconda a 1 ed ecc.# Comunque per classificarle dovete scegliere un tipo di magia: ad# esempio curative, vi basta scrivere:# if skill.power < 0# Allora per far si che lo script capisca l'ugualianza bisogna mettere# 2 uguali == .# allora: == ugualianza# != diverso# < minore# > maggiore# <= minore o uguale# >= maggiore o uguale# Ora andate ad una di queste righe per modificare la classificazione:# 187, 261, 335, 410.# Per fare in modo che una magia sia classificata per due qualità# basta aggiungere un and in questo modo# if skill.occasion == 0 and skill.power < 0# In pratica lo script ti classifica le skill per le loro capacità# puoi ad esempio mettere a tutte le magie elementali una agilità# pari ad 1 e nello script scriverai: if skill.agi_f == 1 . così# quando sceglierai nel menu magie -> elementali ti appariranno solo# di quel tipo.# é tutto chiaro?# Un'altra cosa andate alla riga 569 per modificare il nome delle scelte# Boh.. finito, se avete problemi non esitate a chiedere!!Bugs e Conflitti Noti N/AAltri DettagliChiedete pure a me se avete bisogno di modificare un pò lo script. ^^Ciaooo!! Edited March 15, 2013 by Apo applicato tag code I progetto:///II progetto: Blades of The Spirits///The secret of fairy world completamento 1%///completamento 10% http://www.ff-fan.com/chartest/banners/vincent.jpg Spoiler http://media.giantbomb.com/uploads/0/1476/239781-bof3kss_2_super.jpghttp://www.dragon-tear.net/bofquiz/bof4/bof4-equiz.jpghttp://www.ff-fan.com/chartest/banners/reno.jpg Link to comment Share on other sites More sharing options...
ajeje Posted December 10, 2012 Share Posted December 10, 2012 Skill MenuDescrizione Script che permette di classificare le skill praticamente in qualsiasi modo si voglia Autore Peco92 (ho preso spunto da un menu per oggetti realizzato da Tio) Allegatiun piccolo screen: Spoiler http://img850.imageshack.us/img850/6150/aaat.jpg questo è lo script:http://www.mediafire...39a4z1lr6gesxlc Istruzioni per l'uso scaricate lo script da qua sopra, è un semplice file txt da 28 kb.e copiatene il contenuto incollandolo sopra allo script main, nominatelo come vi pare.eccovi le istruzioni Spoiler ### Ora vi illustrerò come utilizzarlo, allora per prima cosa questo# script classifica le magie in base alle loro capacità. Nel# Database -> Skill scegliete una magia e noterete che ha tante# caratteristiche come il costo mp il danno eccetera..# Io le ho divise per la loro usabilità (occasion), ma ora vi# elenco le possibili classificazioni: # occasion (Usabile in)# power (Danno)# sp_cost (costo)# atk_f (attacco)# eva_f (evasione)# str_f (Forza)# dex_f (Destrezza)# agi_f (Agilità)# int_f (Intelligenza)# hit (Precisione)# pdef_f (Difesa fisica)# mdef_f (Difesa magica)# variance (Variazione) # Per occasion la prima scelta equivale a 0 la seconda a 1 ed ecc.# Comunque per classificarle dovete scegliere un tipo di magia: ad# esempio curative, vi basta scrivere:# if skill.power < 0 # Allora per far si che lo script capisca l'ugualianza bisogna mettere# 2 uguali == .# allora: == ugualianza# != diverso# < minore# > maggiore# <= minore o uguale# >= maggiore o uguale # Ora andate ad una di queste righe per modificare la classificazione:# 187, 261, 335, 410.# Per fare in modo che una magia sia classificata per due qualità# basta aggiungere un and in questo modo# if skill.occasion == 0 and skill.power < 0 # In pratica lo script ti classifica le skill per le loro capacità# puoi ad esempio mettere a tutte le magie elementali una agilità# pari ad 1 e nello script scriverai: if skill.agi_f == 1 . così# quando sceglierai nel menu magie -> elementali ti appariranno solo# di quel tipo.# é tutto chiaro? # Un'altra cosa andate alla riga 569 per modificare il nome delle scelte# Boh.. finito, se avete problemi non esitate a chiedere!! Bugs e Conflitti Noti N/A Altri Dettagli Chiedete pure a me se avete bisogno di modificare un pò lo script. ^^Ciaooo!!ciao non riesco a visualizzare lo script.. Link to comment Share on other sites More sharing options...
Peco92 Posted December 12, 2012 Author Share Posted December 12, 2012 (edited) Scusa non so perchè ma era finito come privato. Ora dovrebbe essere tutto ok.Ciao Edited December 12, 2012 by Peco92 I progetto:///II progetto: Blades of The Spirits///The secret of fairy world completamento 1%///completamento 10% http://www.ff-fan.com/chartest/banners/vincent.jpg Spoiler http://media.giantbomb.com/uploads/0/1476/239781-bof3kss_2_super.jpghttp://www.dragon-tear.net/bofquiz/bof4/bof4-equiz.jpghttp://www.ff-fan.com/chartest/banners/reno.jpg Link to comment Share on other sites More sharing options...
Zuppo Posted December 13, 2012 Share Posted December 13, 2012 Peco, dato che spesso e volentieri i link scadono o un giorno potresti decidere di cambiare account o mediafire cesserà di esistere, preferiamo sempre che gli script siano anche scritti sul topic.Non tanto perchè è scritto nel regolamento del template o perchè ci arrabbiamo, ma solo perchè se dai un'occhiata alle prime pagine di questa sezione, vedrai come l'incuria ha divorato il passato e si sono salvati solo gli script effettivamente scritti nel topic. Purtoppo non ho rpgmaker (sono solo un grafico, non lo uso da anni), perciò in questo momento non posso aprire il tuo script e scriverlo di persona (premesso che non saprei risconoscerlo probabilmente).Ti chiedo di scrivere nel primo post, sotto spoiler, lo script. Se lo metti in questo tag [ruby][/ruby] viene letto come script e sarà ordinato e non sformato.Se puoi metterlo mi faresti un favore :3 Ps: Se per qualche ragione non riesci a causa di un fastidioso bug non risolvibile del sistema di messaggistica avanzata, chiama che te lo copincollo meglio io. DeviantartElfGamesWorks Forum My adventure gameLittle Briar Rose Altri progetti: Oh! I'm Getting Taller! / Il pifferaio di HamelinI miei Fumetti: Folletto Vs Nenè / A.s.D. / A.s.D.2http://www.rpg2s.net/img/fablecontest1st.pnghttp://rpg2s.net/gif/SCContest3Oct.gif http://i43.tinypic.com/1zokd2s.png http://i.imgur.com/qRfaRqE.png http://i43.tinypic.com/eger81.gifhttp://i.imgur.com/BEu6G.gifhttp://i43.tinypic.com/eger81.gif Un sogno nel cassetto... http://i.imgur.com/H1ARhq7.gif Citaziò! Il Coniglio, si sa, saltella con una gamba dietro ed una avanti, un braccino corto ed uno lungo, un'orecchia dritta ed una storta. Perchè il Coniglio odia la simmetria.Flame: Io me lo sono fatto raccontare tutto il Sigmarillion ma ancora devo leggerlo (...)Impaled Janus: Il Sighmarillion, un'opera molto triste.Testament: Ma Flame mi sa che erra convinto, come al solito."Tu devi essere il chiacchierato FenriX, la cui fama deriva dall'arte di giungere rozzamente al sodo del concetto la maggior parte delle volte... detto in una via inoffensiva..." Una piaga in due righe, by Dr.Risolvo! Scheda di Zuppo Del'OquieNome - Zuppo Del'OquieEtà - 76Razza - ElvaanDescrizione - Snello, faccia da cretino, cappelletto alla Robin Hood in testa con la piuma perennemente spiegazzata, maglia in pieno stile: "è la prima cosa che ho trovato in giro" e pantaloni uguali. Le scarpe invece sono forse l'unica cosa realmente sua. Di pelle morbida, salvo la base di cuoio, ottime per correre e fare poco rumore, prive di alcun tipo di tacco. Ed aldilà del vestiario, abbiamo una cerbottana, una fionda, un pugnaletto, una...un..ah no basta. Lo zainetto, si! Ma lì ci tiene il pane ed i suoi strumenti di dubbia qualità.Poi..ha orecchie a punta come ogni Elvaan e capelli castano chiaro, bizzarremente brezzolati di ciocchette tendenti al biondo. E' un biondo fallito, in sostanza. Ah, ma a lui non importa molto. Detto, questo, null'altro di rilevante da segnalare.Se non il fatto che, il più delle volte, sia vestiti che capelli che zaino sono ornati da una quasi perenne sensazione di Bagnato. Perchè ogni pozzanghera che esiste sulla faccia di questa terra, deve, senza via di scampo, finire contro il suo naso. O forse è lui che è legato all'elemento Acqua da un odio amore non espresso...?Misteri del Fato.Carattere - Simpatico, socievole, affabile, allegro, ed al tempo stesso estremamente indifferente alle questioni che non lo riguardano. Astuto, ma mai per cattiveria, decide lui a cosa affezionarsi ed a cosa no. Di mentalità molto..molto bizzarra, vive la vita con dei valori del tutto personali che possono essere a volte comprensibili ed in accordo con quelle altrui, o possono essere decisamente ridicoli agli occhi degli altri. Ma lui è fatto così e non ci ragiona poi molto su come è fatto. Finchè mantiene due braccia due gambe ed una testa, ritiene di essere fatto semplicemente perfetto per quel che gli serve!Background - "Fratello minore. Si, minore! Oh si! DANNATAMENTE MINORE! E questo è un problema! Perchè è un problema, no? A logica dovrebbe essere un bel problema per chiunque abbia voglia di non essere sempre chiamato per secondo, interpellato solo all'ultimo come scorta, impegnato solo quando proprio tutti sono impegnati, considerato solo per fare numero. AH! Minore! Onta! Orgoglio! AH!AH!A...ahah! Ma col cavolo..è una pacchia!"Tranquillamente adagiato sul suo enorme divano, perchè se l'erba è il cuscino, un colle è dunque un enorme divano, Zuppo stava fischiettando con una foglia di acetella in bocca, così univa l'utile (il fischiettare era molto utile a parer suo) con il dilettevole (e quella fogliolina aveva un buon sapore, perciò dilettevolmente saporita!).Era a dir poco splendido compiere un'attività tanto impegnativa e semplice al contempo da giustificare la sua lunga, perenne, praticamente insindacabile assenza a qualsivoglia attività sociale.Lui disegnava le mappe, ed il fratellone le spacciava per sue guadagnando una montagna di soldi, tanta era l'accuratezza delle zone anche più inesplorabili, ed in cambio il Brò gli garantiva una vita tranquilla e senza impegni. Oh, fratello minore, ma il maggiore era tutto merito suo!Poi, all'improvviso, tutto cambiò.Perchè serve sempre un grande cambiamento per una grande svolta, no?Ebbene, da quel momento lui partì, viaggiò, abbandonò la sua colonia, perseguì la via del "faccio da solo e meglio mi sento".Tutto questo a causa sua..a causa loro...!!"Fra'? Dove hai messo il mio flauto di rape?""Uh..era ammuffito. L'ho buttato anni fa ormai.""..che..CHE COSA HAI FATTO!?!?!"Inaudito.Ovvio e logico andarsene, no? Sono certo che voi tutti sarete daccordo con me! NON SI TOCCANO I FLAUTI DI RAPE ALTRUI! MUFFA O NON MUFFA!Beh si, daccordo, forse lo aveva dimenticato per gli ultimi vent'anni, ma questo non cambiava le cose. Dannato fratello. E.....no, non se ne era andato solo per quello, cosa credete!?"...Mamma...Fra' ha buttato il mio flauto di rape.""Ah, deve essere ammuffito come l'ocarina di zucca che ho buttato l'altro ieri.""...che...CHE COSA HAI FATTO!?!?!?!"Ovvio che non bastava un flauto a mandarlo via. Ma due, dai è troppo! L'aveva terminata, quell'ocarina, appena tre anni prima. ERA NUOVA!E così, imparata la lezione del "non si lascia nulla in casa altrui", perchè quella non era PIU' la sua casa, Zuppo prese ogni cosa di valore che aveva con se: dunque uno svariato elenco di strumenti da ortolano, a partire dal triangolo di selci alla trombetta di cavolfiore, e partì. Partì, lasciandosi dietro una città perfetta, con una vita perfetta, una famiglia perfetta, ed una stupida, sciocca, banale idea che questa perfezione sarebbe durata in eterno.Ah. Ma non scordiamoci un dettaglio.Partì. Attraversò la strada. Il ponte. Il fiume. Inciampò. Cadde nella pozza vicino al fiume. Si inzuppò. Si rialzò e ri-partì.Perchè il nome se lo era guadagnato con molta sfigata fatica eh."Ma che bel bambino, signora Ouquie!""...oh...scusatemi, riposavo. Quale bambino?""Hemm..quello che tenete nella culla.""Oh! Quel bambino! Oh si ve lo faccio vedere subit.." E con un braccio, la maldestra madre intruppò la culla, che era ovviamente posizionata di fianco alla finestra aperta, che vide ovviamente un infante venire catapultato fuori, e che, alfine, vide sempre ovviamente il medesimo infante finire a mollo nel fiume, per fortuna abbastanza profondo, che passava proprio adiacente le mura della piccola dimora.Quando lo ripresero, era vivo. Zuppo, ma vivo.E Zuppo rimase a vita.I reumatismi sarebbero arrivati in vecchiaia.Equip -Pugnale comune - Prezzo: 9Armatura di Cuio [1 PA] - Prezzo: 15Borsa Comune - Prezzo: 10Fionda - Prezzo(pagato da madre natura XD) Link to comment Share on other sites More sharing options...
Peco92 Posted December 15, 2012 Author Share Posted December 15, 2012 Ok ho sistemato, scusate ma quando ho messo lo script non riuscivo a scriverlo direttamente nel topic e ho preferito mettere il download ahah. I progetto:///II progetto: Blades of The Spirits///The secret of fairy world completamento 1%///completamento 10% http://www.ff-fan.com/chartest/banners/vincent.jpg Spoiler http://media.giantbomb.com/uploads/0/1476/239781-bof3kss_2_super.jpghttp://www.dragon-tear.net/bofquiz/bof4/bof4-equiz.jpghttp://www.ff-fan.com/chartest/banners/reno.jpg Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now