|
| | Lista de Scripts que preciso D: | |
| Autor | Mensagem |
---|
Gama Recruta
| Assunto: Lista de Scripts que preciso D: Qui Out 22, 2009 8:34 pm | |
| Bom,eis a lista:
-Comandos individuais que funcione com o sistema de batalha oval,de preferencia já venha programado só para ter:Habilidades e Fuga -Um que faça com que o envenenamento cause 100 de dano,e não uma porcentagem do HP do aliado E do inimigo -Um script que mostre a vida e o MP dos inimigos,em numeros,não em barra,que funcione com o sistema de batalha oval -Tipo,quando um monstro tem 700 de agi,e o herói tem 680,normalmente o monstro ataca primeiro né,mas de vez em quando o herói ataca primeiro,mesmo tendo menos AGI que o monstro.Então,eu queria um que evitasse isso,que sempre quem tem maior AGI atacasse primeiro -Um que faça com que sempre dê para fugir,porque as vezes a fuga falha né : P
Não me lembro se tem mais,devia ter feito uma lista antes >.<,se eu lembrar eu faço um edit,vlw ^^ |
| | | Gabs Capitão
Ocupação : Procrastinando
Registro : Gabs : Animal : Dinossauro lv barney | Grappler lv Indiana Jones
| Assunto: Re: Lista de Scripts que preciso D: Ter Out 27, 2009 9:50 pm | |
| Seria bem mais facil postar o sistema de batalha em questao, se possivel o topico original. Ou entao, postar no proprio topico de onde baixou o sistema. Assim fica realmente mais facil, pois cada sistema de batalha tem um funcionamento.
Btw, nunca ouvi falar em sistema de batalha oval |
| | | Eurritimia Tenente
Registro : Eurritimia : Humano : Flash Master lv.11; Maker lv.08; Mago lv.03; Druida lv.03; Vanessa lv.01
| Assunto: Re: Lista de Scripts que preciso D: Qua Out 28, 2009 8:52 am | |
| - Gabriel Winchester escreveu:
- Seria bem mais facil postar o sistema de batalha em questao, se possivel o topico original.
Ou entao, postar no proprio topico de onde baixou o sistema. Assim fica realmente mais facil, pois cada sistema de batalha tem um funcionamento.
Btw, nunca ouvi falar em sistema de batalha oval Acho que ele quis dizer aquele menu oval, tipo o Sword of Mana. Eu o já vi em alguns jogos, mas nunca me preocupei em baixar devido às incompatibilidades (dava bug ali, dava bug aqui, dava bug em quase todos os lugares). De qualquer forma, eu tenho script feito pelo Shdwlink1993, que permite controlar melhor o envenenamento. Não esqueça de dar créditos ao Shdwlink1993 pelo script.Eis o script: - Spoiler:
- Código:
-
#============================================================================== # HoT DoT # Author: Shdwlink1993 # Version: 1.0b # Type: Poison Control #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # HT Date 1.0b: 1/11/2009 #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # # # This work is protected by the following license: # #---------------------------------------------------------------------------- # # # # Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported # # ( http://creativecommons.org/licenses/by-nc-sa/3.0/ ) # # # # You are free: # # # # to Share - to copy, distribute and transmit the work # # to Remix - to adapt the work # # # # Under the following conditions: # # # # Attribution. You must attribute the work in the manner specified by the # # author or licensor (but not in any way that suggests that they endorse you # # or your use of the work). # # # # Noncommercial. You may not use this work for commercial purposes. # # # # Share alike. If you alter, transform, or build upon this work, you may # # distribute the resulting work only under the same or similar license to # # this one. # # # # - For any reuse or distribution, you must make clear to others the license # # terms of this work. The best way to do this is with a link to this web # # page. # # # # - Any of the above conditions can be waived if you get permission from the # # copyright holder. # # # # - Nothing in this license impairs or restricts the author's moral rights. # # # #---------------------------------------------------------------------------- # # # # Note that if you share this file, even after editing it, you must still # # give proper credit to shdwlink1993. # #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # # ~= Function =~ # # This script is designed to allow you to expand what poison does to your # character. Poison now is able to affect HP or MP, and take off a fraction or # a set amount of HP/MP. # #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # # ~= Version History =~ # # Version 1.0b ---------------------------------------------------- [1/11/2009] # #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # # ~= Customization =~ # # Customization can be found right under where the Poison Database begins. # #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:= # # ~= Compatability =~ # # - Will not work with other Poison-editing scripts. # #:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
module SL93
def self.hotdot(id) case id #------------------------------------------------------------------------ # Poison Database Begins #------------------------------------------------------------------------ # when STATE_NUMBER then return [TYPE, DAMAGE, VARIANCE, LIMIT_DRAIN] # * STATE_NUMBER is the state you want to be affected by this. # * TYPE refers to the thing sustaining damage. # 1 = HP, 2 = MP. If the type is positive, the amount is a literal # number (eg. You lose about 50 HP). If the type is negative, then # the amount is a fraction of the maximum (eg. You lose about 50% of # your HP). # * DAMAGE refers to how much damage is healed/taken. # A Positive amount hurts you and a negative amount heals you. # * VARIANCE refers to how much the damage varies. Positive only. # This depends in part on if the type was positive (~5 HP difference) # or negative (~5% HP difference). # * LIMIT_DRAIN refers to if the poison can leave you with 0 HP/SP. # If true, then it is limited, and stops at 1. If false, then it # isn't. #------------------------------------------------------------------------ when 2 then return [-1, 10, 10, false] # Standard Poison #------------------------------------------------------------------------ # Poison Database Ends #------------------------------------------------------------------------ end return false end
end
class Game_Battler
def slip_damage? return @states.any? {|i| SL93.hotdot(i) != false } end
def slip_damage_effect ids = [] for i in @states ids.push(i) if SL93.hotdot(i) != false end for i in ids damage = SL93.hotdot(i)[1] if SL93.hotdot(i)[0] > 0 damage = self.maxhp / SL93.hotdot(i)[1] if SL93.hotdot(i)[0] == -1 damage = self.maxsp / SL93.hotdot(i)[1] if SL93.hotdot(i)[0] == -2 if damage.abs > 0 && SL93.hotdot(i)[2] > 0 amp = [damage.abs - SL93.hotdot(i)[2], 1].max if SL93.hotdot(i)[0] > 0 amp = [damage.abs * SL93.hotdot(i)[2] / 100, 1].max if SL93.hotdot(i)[0] < 0 damage += rand(amp+1) + rand(amp+1) - amp end damage = damage * -1 if SL93.hotdot(i)[0] < 0 if SL93.hotdot(i)[0] == 1 || SL93.hotdot(i)[0] == -1 damage = self.hp - 1 if !SL93.hotdot(i)[3] && (0 > self.hp += damage) self.hp += damage elsif SL93.hotdot(i)[0] == 2 || SL93.hotdot(i)[0] == -2 damage = self.mp - 1 if !SL93.hotdot(i)[3] && (0 > self.mp += damage) self.mp += damage end end return true end
end
class Game_Party
def on_player_walk for actor in members if actor.slip_damage? actor.slip_damage_effect $game_map.screen.start_flash(Color.new(255,0,0,64), 4) $game_temp.next_scene = "gameover" if $game_party.all_dead? end end end
end
|
| | | Hugo Lima Aspirante
| Assunto: Re: Lista de Scripts que preciso D: Qua Out 28, 2009 10:19 am | |
| É o menu oval de batalha Foi criado por ziifeeé esse script aqui: - Spoiler:
#================================================= ============================= # Menu Oval de Batalha # Criado por ziifee #================================================= =============================
module Zii # Número identificador do ícone (Vertical x 16 + Horizontal - 1) FIGHT = 132 # Lutar ESCAPE = 143 # Fugir ATTACK = 1 # Atacar GUARD = 52 # Defender SKILL = 128 # Habilidades ITEM = 144 # Itens
# Direção da rotação (Esquerda ou Direita) TURN = "Direita"
# Usar faces no menu? ("Faces" para usar e "" para nada) STATUS_FACE = "Faces"
# Mostrar nome dos heróis no menu? ("Nomes" para usar e "" para nada) STATUS_LINE = "Nomes"
# Tamanho das linhas (Padrão: 20) LINE_SIZE = 14
#-------------------------------------------------------------------------- # Configuração de direção da rotação #-------------------------------------------------------------------------- def self.turn_normal? return false if TURN == "Esquerda" return true if TURN == "Direita" return true end #-------------------------------------------------------------------------- # Configuração de exibição #-------------------------------------------------------------------------- def self.battle_face? return true if STATUS_FACE == "Faces" return false end #-------------------------------------------------------------------------- # Configuração de exibição #-------------------------------------------------------------------------- def self.line_name? return true if STATUS_LINE == "Nomes" return false end end
#================================================= ============================= # Window_Base #================================================= =============================
class Window_Base
def draw_face(face_name, face_index, x, y, size = 96, opacity = 255) bitmap = Cache.face(face_name) rect = Rect.new(0, 0, 0, 0) rect.x = face_index % 4 * 96 + (96 - size) / 2 rect.y = face_index / 4 * 96 + (96 - size) / 2 rect.width = size rect.height = size self.contents.blt(x, y, bitmap, rect, opacity) bitmap.dispose end
def draw_actor_face(actor, x, y, size = 96, opacity = 255) draw_face(actor.face_name, actor.face_index, x, y, size, opacity) end end
#================================================= ============================= # Window_SpinCommand #------------------------------------------------------------------------------ # Esta classe comanda a rotação do menu #================================================= =============================
class Window_SpinCommand < Window_Base attr_reader :index attr_reader :help_window
def initialize(cx, cy, commands, setting = {}) @radius = setting.has_key?("R") ? setting["R"] : 40 @speed = setting.has_key?("S") ? setting["S"] : 36 @spin_back = setting.has_key?("G") ? setting["G"] : "" @spin_line = setting.has_key?("L") ? setting["L"] : nil x, y = cx - @radius - 28, cy - @radius - 28 width = height = @radius * 2 + 56 super(x, y, width, height) self.opacity = 0 @index = 0 @commands = commands @spin_right = true @spin_count = 0 update_cursor end
def draw_spin_graphic(i, cx, cy) case command_kind(i) when "icon" draw_icon(command_pull(i), cx - 12, cy - 12, command_enabled?(i)) end end
def refresh set_spin end
def draw_item(index, enabled = true) @commands[index][3] = enabled set_spin end
def command_name(index = @index) return "" if index < 0 name = @commands[index][0] return name != nil ? name : "" end
def command_kind(index) result = @commands[index][1] return result != nil ? result : "" end
def command_pull(index) result = @commands[index][2] return result != nil ? result : "" end
def command_enabled?(index) result = @commands[index][3] return result != nil ? result : true end
def set_index(name) n = -1 for i in 0...@commands.size n = i if @commands[i][0] == name end @index = n if n >= 0 update_cursor call_update_help set_spin end
def index=(index) @index = index update_cursor call_update_help set_spin end
def center_x return contents.width / 2 end
def center_y return contents.height / 2 end
def item_max return @commands.size end
def set_background return if @spin_back == "" bitmap = Cache.system(@spin_back) rect = Rect.new(0, 0, bitmap.width, bitmap.height) self.contents.blt(12, 12, bitmap, rect) end
def set_text return if @spin_line == nil y = center_y - WLH / 2 + @spin_line self.contents.draw_text(center_x - 48, y, 96, WLH, command_name, 1) end
def angle_size return (Math::PI * 2 / item_max) end
def set_spin_count @spin_count = angle_size * 360 / @speed set_spin(true) end
def set_spin(spin = false) self.contents.clear set_background angle = spin ? @speed * @spin_count / 360 : 0 angle = @spin_right ? angle : -angle for i in 0...item_max n = (i - @index) * angle_size + angle cx = @radius * Math.sin(n) + center_x cy = - @radius * Math.cos(n) + center_y draw_spin_graphic(i, cx, cy) end set_text end
def update super update_cursor if @spin_count > 0 @spin_count -= 1 set_spin(@spin_count >= 1) return end update_command end
def command_movable? return false if @spin_count > 0 return false if (not visible or not active) return false if (index < 0 or index > item_max or item_max == 0) return false if (@opening or @closing) return true end
def command_right @index = (@index + 1) % item_max @spin_right = true set_spin_count end
def command_left @index = (@index - 1 + item_max) % item_max @spin_right = false set_spin_count end
def update_command if command_movable? if Input.press?(Input::RIGHT) Sound.play_cursor Zii.turn_normal? ? command_right : command_left end if Input.press?(Input::LEFT) Sound.play_cursor Zii.turn_normal? ? command_left : command_right end end call_update_help end
def update_cursor if @index < 0 self.cursor_rect.empty else rect = Rect.new(0, 0, 24, 24) rect.x = center_x - rect.width / 2 rect.y = center_y - rect.height / 2 - @radius self.cursor_rect = rect end end
def help_window=(help_window) @help_window = help_window call_update_help end
def call_update_help if self.active and @help_window != nil update_help end end
def update_help end end
#================================================= ============================= # Window_LineHelp #================================================= =============================
class Window_LineHelp < Window_Base
def initialize super(-16, 0, 576, WLH + 32) self.opacity = 0 end
def set_text(text, align = 0) if text != @text or align != @align self.contents.clear back_color = Color.new(0, 0, 0, 80) self.contents.fill_rect(0, y = 12, contents.width, WLH - y, back_color) self.contents.font.color = normal_color self.contents.draw_text(20, 0, self.width - 72, WLH, text, align) @text = text @align = align end end end
#================================================= ============================= # Window_PartyCommand #================================================= =============================
class Window_PartyCommand < Window_SpinCommand def initialize s1 = [Vocab::fight, "icon", Zii::FIGHT, true] s2 = [Vocab::escape, "icon", Zii::ESCAPE, $game_troop.can_escape] setting = {"R"=>40, "S"=>52, "G"=>"Spin40", "L"=>-12} super(72, 356, [s1, s2], setting) self.active = false set_spin end end
#================================================= ============================= # Window_ActorCommand #================================================= =============================
class Window_ActorCommand < Window_SpinCommand
def initialize s1 = [Vocab::attack, "icon", Zii::ATTACK, true] s2 = [Vocab::skill, "icon", Zii::SKILL, true] s3 = [Vocab::guard, "icon", Zii::GUARD, true] s4 = [Vocab::item, "icon", Zii::ITEM, true] setting = {"R"=>40, "S"=>52, "G"=>"Spin40", "L"=>-12} super(72, 356, [s1, s2, s3, s4], setting) self.active = false set_spin end
def setup(actor) @commands[0][2] = Zii::ATTACK @commands[1][0] = Vocab::skill if actor.weapons[0] != nil n = actor.weapons[0].icon_index @commands[0][2] = n if n > 0 end @commands[1][0] = actor.class.skill_name if actor.class.skill_name_valid self.index = 0 set_spin end end
#================================================= ============================= # Window_BattleStatus #================================================= =============================
class Window_BattleStatus < Window_Selectable
def initialize super(128, 288, 416, 128) @column_max = 4 refresh self.active = false self.opacity = 0 end
def draw_neomemo7_back @neomemo7_clear = false for index in 0...@item_max x = index * 96 self.contents.clear_rect(x + 72, WLH * 3, 24, 24) next unless Zii.battle_face? actor = $game_party.members[index] next if actor.hp <= 0 bitmap = Cache.face(actor.face_name) rect = Rect.new(0, 0, 22, 22) rect.x = actor.face_index % 4 * 96 + 72 rect.y = actor.face_index / 4 * 96 + 72 self.contents.blt(x + 72, WLH * 3, bitmap, rect, 192) end end
def draw_item(index) x = index * 96 rect = Rect.new(x, 0, 96, 96) self.contents.clear_rect(rect) self.contents.font.color = normal_color actor = $game_party.members[index] draw_actor_face(actor, x + 2, 2, 92, 192) if actor.hp > 0 and Zii.battle_face? draw_actor_state(actor, x + 72, WLH * 3) if Zii.line_name? self.contents.font.color = hp_color(actor) size = Zii::LINE_SIZE self.contents.font.size = size self.contents.draw_text(x, WLH * 1 + 20 - size, 80, WLH, actor.name) self.contents.font.size = 20 end draw_actor_hp(actor, x, WLH * 2, 80) draw_actor_mp(actor, x, WLH * 3, 70) end def update_cursor if @index < 0 self.cursor_rect.empty else rect = Rect.new(index * 96, 0, 96, 96) self.cursor_rect = rect end end end
#================================================= ============================= # Scene_Battle #================================================= =============================
class Scene_Battle < Scene_Base
alias :neomemo13_create_info_viewport :create_info_viewport def create_info_viewport neomemo13_create_info_viewport @info_viewport.rect.set(0, 0, 544, 416) @status_window.x = 128 @actor_command_window.x = 4 end
alias :neomemo13_update_info_viewport :update_info_viewport def update_info_viewport ox = @info_viewport.ox neomemo13_update_info_viewport @info_viewport.ox = ox end
alias :neomemo13_start_party_command_selection :start_party_command_selection def start_party_command_selection if $game_temp.in_battle @party_command_window.visible = true @actor_command_window.visible = false end neomemo13_start_party_command_selection end
alias :neomemo13_update_party_command_selection :update_party_command_selection def update_party_command_selection return unless @party_command_window.command_movable? neomemo13_update_party_command_selection end
alias :neomemo13_start_actor_command_selection :start_actor_command_selection def start_actor_command_selection neomemo13_start_actor_command_selection @party_command_window.visible = false @actor_command_window.visible = true end
alias :neomemo13_update_actor_command_selection :update_actor_command_selection def update_actor_command_selection return unless @actor_command_window.command_movable? neomemo13_update_actor_command_selection end
alias :neomemo13_start_target_enemy_selection :start_target_enemy_selection def start_target_enemy_selection x = @info_viewport.rect.x ox = @info_viewport.ox neomemo13_start_target_enemy_selection @info_viewport.rect.x = x @info_viewport.ox = ox @target_enemy_window.x = 544 - @target_enemy_window.width @target_enemy_window.y = 288 @info_viewport.rect.width -= @target_enemy_window.width end
alias :neomemo13_end_target_enemy_selection :end_target_enemy_selection def end_target_enemy_selection x = @info_viewport.rect.x ox = @info_viewport.ox @info_viewport.rect.width += @target_enemy_window.width neomemo13_end_target_enemy_selection @info_viewport.rect.x = x @info_viewport.ox = ox end
alias :neomemo13_start_target_actor_selection :start_target_actor_selection def start_target_actor_selection x = @info_viewport.rect.x ox = @info_viewport.ox neomemo13_start_target_actor_selection @target_actor_window.y = 288 @info_viewport.rect.x = x @info_viewport.ox = ox @info_viewport.rect.width -= @target_actor_window.width end
alias :neomemo13_end_target_actor_selection :end_target_actor_selection def end_target_actor_selection x = @info_viewport.rect.x ox = @info_viewport.ox @info_viewport.rect.width += @target_actor_window.width neomemo13_end_target_actor_selection @info_viewport.rect.x = x @info_viewport.ox = ox end
alias :neomemo13_start_skill_selection :start_skill_selection def start_skill_selection neomemo13_start_skill_selection @skill_window.dispose if @skill_window != nil @help_window.dispose if @help_window != nil @help_window = Window_LineHelp.new @skill_window = Window_Skill.new(8, 64, 528, 216, @active_battler) @skill_window.help_window = @help_window end
alias :neomemo13_start_item_selection :start_item_selection def start_item_selection neomemo13_start_item_selection @item_window.dispose if @item_window != nil @help_window.dispose if @help_window != nil @help_window = Window_LineHelp.new @item_window = Window_Item.new(8, 64, 528, 216) @item_window.help_window = @help_window end end
PS: tem que ter essa imagem aqui na pasta system: |
| | | Gama Recruta
| Assunto: Re: Lista de Scripts que preciso D: Sáb Out 31, 2009 9:34 am | |
| Putz,foi mal,tava sem net :P
@Gabriel Winchester É o sistema de batalha oval que o Hugo Lima falou
@Eurritimia Não é o menu não,é o que o Hugo falou mesmo,e,obrigado pelo pelo script,eu procurei por ele e nao achei,nunca fui bom de achar coisas na net ^^'(até no google eu tenho problemas '-')
@Hugo Lima Eu já tô com o script,eu só preciso de um script de comandos individuais que funcione com ele,o que já tem não funciona
Bom,de 5 já tenho 1 ^^,espero que os outros 4 apareçam em breve,obrigado! |
| | | Conteúdo patrocinado
| Assunto: Re: Lista de Scripts que preciso D: | |
| |
| | | | Lista de Scripts que preciso D: | |
|
Tópicos semelhantes | |
|
Tópicos semelhantes | |
| |
Página 1 de 1 | |
| Permissões neste sub-fórum | Não podes responder a tópicos
| |
| |
| |
|