Drupogame
 MOG_Luck System V1.2    Imagen12

Si quieres formar parte del staff tienes que enviar un MP al administrador o al Co-Administrador

Unirse al foro, es rápido y fácil

Drupogame
 MOG_Luck System V1.2    Imagen12

Si quieres formar parte del staff tienes que enviar un MP al administrador o al Co-Administrador
Drupogame
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.
Conectarse

Recuperar mi contraseña

Buscar
 
 

Resultados por:
 


Rechercher Búsqueda avanzada

Últimos temas
» Reglas del foro
 MOG_Luck System V1.2    EmptyLun Ene 23, 2012 11:32 pm por edux

» edux returns
 MOG_Luck System V1.2    EmptyLun Ene 23, 2012 11:30 pm por edux

» The Elder Scrolls IV: Oblivion
 MOG_Luck System V1.2    EmptyVie Ene 20, 2012 11:28 pm por Aljevalsar

» Kojima promete que habrá un Metal Gear Solid de auténtico sigilo
 MOG_Luck System V1.2    EmptyJue Dic 22, 2011 7:33 pm por Anime_Maker

» Este fin de semana habrá nuevos modos para Modern Warfare 3
 MOG_Luck System V1.2    EmptyJue Dic 15, 2011 12:03 pm por Akeo

» Kojima quiso crear un Metal Gear Solid 5 ambientado en la Segunda Guerra Mundial
 MOG_Luck System V1.2    EmptyJue Dic 15, 2011 11:01 am por Akeo

» Darksiders II se dejará ver en los Spike VGA
 MOG_Luck System V1.2    EmptyMiér Dic 14, 2011 11:50 am por Akeo

» El creador de Bayonetta desmiente estar implicado en el desarrollo de Metal Gear Rising
 MOG_Luck System V1.2    EmptyMiér Dic 14, 2011 1:54 am por Akeo

» Los creadores de Bayonetta se encargan del desarrollo de Metal Gear Rising
 MOG_Luck System V1.2    EmptyMiér Dic 14, 2011 1:52 am por Akeo

» En Construccion: Mundo Abismal
 MOG_Luck System V1.2    EmptyLun Oct 24, 2011 4:03 am por SagahonArturo

» Visceral Games busca nuevo personal para la franquicia Dead Space
 MOG_Luck System V1.2    EmptyMar Oct 11, 2011 3:22 am por The_King_Jaas

» buenas
 MOG_Luck System V1.2    EmptyMar Oct 11, 2011 3:21 am por The_King_Jaas

» Batman: Arkham City llegará "sin ninguna limitación"
 MOG_Luck System V1.2    EmptySáb Oct 08, 2011 1:44 am por Akeo

» Los creadores de Bulletstorm admiten divertidos que el juego tenía demasiadas palabras malsonantes
 MOG_Luck System V1.2    EmptySáb Oct 08, 2011 1:41 am por Akeo

» PES 2012: El primer DLC estará disponible el 11 de octubre
 MOG_Luck System V1.2    EmptySáb Oct 08, 2011 1:39 am por Akeo

Los posteadores más activos del mes
No hay usuarios

Estadísticas
Tenemos 98 miembros registrados
El último usuario registrado es Lawdesifi

Nuestros miembros han publicado un total de 6208 mensajes en 777 argumentos.
Compañeros
Crear foro
Crear foro
Crear foro
Crear foro
PFC
Crear foro
Crear foro
Otakus Activos
Diviértete acá
Crear foro
Foro de anime y RM2k3/XP/VX
contador.
contador de visitas
Marzo 2024
LunMarMiérJueVieSábDom
    123
45678910
11121314151617
18192021222324
25262728293031

Calendario Calendario


MOG_Luck System V1.2

Ir abajo

 MOG_Luck System V1.2    Empty MOG_Luck System V1.2

Mensaje por The_King_Jaas Miér Mar 30, 2011 9:42 pm

Este script añade un sistema de suerte que modifica las posibilidades de causar daños criticos y de ganar items

Código:

#_________________________________________________
# MOG_Luck System V1.2         
#_________________________________________________
# By Moghunter   
# http://www.atelier-rgss.com
#_________________________________________________
#Adiciona o atributo sorte, que interfere na  na
#chance de ganhar itens ou de causar dano crítico.
#_________________________________________________
module MOG
# Limite maximo para a sorte.
# Valores maiores que 100% serão limitados a esse valor.
# MAX_LUCK = {A=>B}
#
# A = ID do personagem
# B = valor maximo de sorte para cada personagem.
#
# Caso não definir nada o valor maximo será 100%.
MAX_LUCK = {
    1=>60,
    2=>45,
    7=>23
          }
#_________________________________________________
#Definição dos parâmetros iniciais de sorte do personagem.
# INILUCK = {A =>B}
#
# A = ID do personagem.
# B = valor inicial da sorte.
#
#Se não definir nada o valor inicial será 1.
INILUCK = {
          1 =>5,
          2 =>3,
          7 =>2
          }
#_________________________________________________       
#Definição da quantidade de sorte que ganhará por level.
#LKUP = {A =>B}
#
# A = ID do personagem
# B = Valor da bonificação.
#
#Se não definir nada o valor da bonificação será 1.
LKUP = {1 =>2,
        2 =>3
      }
#_________________________________________________       
#Calculo para ganhar item.
#
# false = Chance de ganhar item é baseado no luck mais alto do grupo.
# true  = Chance de ganhar item é baseado na média do grupo.
LKITEMEDIA = true
#_________________________________________________       
#Quantidade % de HP recuperado.
LKHPRECPER = 10
end
#_________________________________________________
$mogscript = {} if $mogscript == nil
$xrxs = {} if $xrxs == nil
$mogscript["luck_system"] = true
##############
# Game Actor #
##############
class Game_Actor < Game_Battler
alias mog23_setup setup
def setup(actor_id)
iniluck = MOG::INILUCK[actor_id]
maxluck = MOG::MAX_LUCK[actor_id]
if maxluck == nil
@max_luck = 100
else
@max_luck = maxluck
end
if MOG::INILUCK[actor_id] == nil
@luck = 1
else
@luck = iniluck
end
if MOG::LKUP[actor_id] == nil
@luckup = 1
else
@luckup = MOG::LKUP[actor_id]
end
mog23_setup(actor_id)
end
def max_luck
return @max_luck
end
def luck
if @max_luck != nil and @luck > @max_luck
@luck = @max_luck
else
if @luck > 100
@luck = 100
end
return @luck
end
end
def exp=(exp)
@exp = [[exp, 9999999].min, 0].max
while @exp >= @exp_list[@level+1] and @exp_list[@level+1] > 0
@level += 1
@luck += @luckup
for j in $data_classes[@class_id].learnings
if j.level == @level
learn_skill(j.skill_id)
end
end
end
while @exp < @exp_list[@level]
@level -= 1
@luck  -= @luckup
end
@hp = [@hp, self.maxhp].min
@sp = [@sp, self.maxsp].min
end
end
###############
# Game_Enemy  #
###############
class Game_Enemy < Game_Battler
def treasure_prob
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
if MOG::LKITEMEDIA == true
return actor.luck / $game_party.actors.size
else
return actor.luck
end
end
end
end
################
# Game_Battler #
################
class Game_Battler
def attack_effect(attacker)
self.critical = false
hit_result = (rand(100) < attacker.hit)
if hit_result == true
atk = [attacker.atk - self.pdef / 2, 0].max
self.damage = atk * (20 + attacker.str) / 20
self.damage *= elements_correct(attacker.element_set)
self.damage /= 100
if self.damage > 0
if attacker.is_a?(Game_Actor)
if rand(100) < attacker.luck
self.damage *= 2
self.critical = true
end
else
if rand(100) < 4 * attacker.dex / self.agi
self.damage *= 2
self.critical = true
end
end
if self.guarding?
self.damage /= 2
end
end
if self.damage.abs > 0
amp = [self.damage.abs * 15 / 100, 1].max
self.damage += rand(amp+1) + rand(amp+1) - amp
end
eva = 8 * self.agi / attacker.dex + self.eva
hit = self.damage < 0 ? 100 : 100 - eva
hit = self.cant_evade? ? 100 : hit
hit_result = (rand(100) < hit)
end
if hit_result == true
remove_states_shock
self.hp -= self.damage
@state_changed = false
states_plus(attacker.plus_state_set)
states_minus(attacker.minus_state_set)
else
self.damage = "Miss"
self.critical = false
end
return true
end
end
###############
# Window Base #
###############
class Window_Base < Window
def draw_actor_luck(actor, x, y)
self.contents.font.color = normal_color
self.contents.draw_text(x, y, 120, 32, "Luck  " + actor.luck.to_s + "%")
if $mogscript["menu_eva"] == true
back = RPG::Cache.picture("STBAR_Back") 
cw = back.width
ch = back.height
src_rect = Rect.new(0, 0, cw, ch) 
self.contents.blt(x , y - ch + 40, back, src_rect)
meter = RPG::Cache.picture("STBAR.png") 
cw2 = meter.width * actor.luck / actor.max_luck
ch2 = meter.height
src_rect2 = Rect.new(0, 0, cw2, ch2) 
self.contents.blt(x , y - ch + 40, meter, src_rect2)
end
end
end
#################
# Window Status #
#################
class Window_Status < Window_Base
alias mog23_refresh refresh
def refresh
mog23_refresh
if $mogscript["menu_eva"] == true
draw_actor_luck(@actor, 520,210)
else
draw_actor_luck(@actor, 325,120)
end
end
end
################
# Scene Battle #
################
class Scene_Battle
alias mog23_start_phase5 start_phase5
def start_phase5
mog23_start_phase5 
for actor in $game_party.actors
if rand(100) < actor.luck
lkhprec = actor.maxhp * MOG::LKHPRECPER / 100
actor.hp += lkhprec
actor.damage_pop = true
actor.damage = -lkhprec
end
end
@status_window.refresh
end
end
The_King_Jaas
The_King_Jaas
Co-Administrador
Co-Administrador

Mensajes : 1737
Fecha de inscripción : 02/02/2011

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.