Últimos temas
» Pokemon Destiny
por Tonitron Sáb Ago 01, 2020 7:19 pm

» KEndure XP + VX
por kyonides Sáb Ago 01, 2020 2:11 am

» KRiskPoints XP
por kyonides Sáb Ago 01, 2020 1:45 am

» The Legend of Zelda: Trident of Power (RM2K3) [Juego Completo]
por Pizus Miér Jul 29, 2020 10:27 pm

» Chara - Cebolla Caminante
por CryOnion Miér Jul 29, 2020 10:23 pm

» Error despliegue del proyecto para Web
por sipsop Miér Jul 29, 2020 2:14 pm

» [RMVX]Kami no dokusai [Juego del Foro]
por luistop12 Sáb Jul 25, 2020 9:24 am

» KMapSign RG
por kyonides Sáb Jul 25, 2020 6:38 am

» Enemybook Plugin (completar besitario por zona + premio) MV - ayuda -
por Mericantos Sáb Jul 25, 2020 4:54 am

» Busco joyitas de RPG
por Solaire Vie Jul 24, 2020 11:16 pm

» The Timeless House - Terror - ¡Descarga ya disponible!
por ElNachGames Jue Jul 23, 2020 4:53 am

» [Tutorial] Errores comunes - Índice
por Muzgar Mar Jul 21, 2020 11:41 pm


KEW XP - Enemigos + Armas

Ir abajo

KEW XP - Enemigos + Armas Empty KEW XP - Enemigos + Armas

Mensaje por kyonides el Jue Ene 24, 2019 6:32 am

KEW XP

por Kyonides-Arkanthes


Introducción

Este scriptlet les permite equipar a los monstruos con las armas que deseen. Solo requieren de un llamado a script por tipo de monstruo para conseguirlo.

Mad  Me odias, ¿no es verdad?


No, no es eso... Es que me cuesta trabajo soportar al tarado de Aluxes alias Alex alias Alexis y había que hacerle la vida de cuadritos.

Very Happy  ¡Lo hubieras dicho antes!  Razz ¡Ahora podré verlo en plena agonía!

O_o? Qué bien que te gustó la idea...

Script
Código:
# * KEW XP
#   Scripter : Kyonides-Arkanthes
#   2019-01-23

# ¡Los Enemigos pueden equipar un número cualquiera de armas!

# * Llamados a Script *

#     KEW.set_weapons(IDEnemigo, ArmaID, etc.)
#   ArmaID puede ser un número igual a 0 o superior. Con 0 se quita el arma.
#   Usenlo antes de que empiece el comando de evento de batalla. Es 1 por tipo de monstruo.

#     enemy = $game_troop.members[posicion]
#     enemy.set_weapons(ArmaID, etc.)
# o  enemy.set_weapon(posicion, ArmaID)
#   Llámenlo durante la batalla como un comando de evento de batalla.

module KEW
  WEAPON_MAX = 2
  def self.set_weapons(enemy_id, *weapons)
    return if enemy_id < 1
    @weapons[enemy_id] = weapons[0...WEAPON_MAX]
  end
  def self.get_weapons(enemy_id) @weapons[enemy_id] end
  def self.clear_weapons(enemy_id) @weapons.delete(enemy_id) end
  def self.include?(enemy_id) @weapons.keys.include?(enemy_id) end
end

class Game_Enemy
  alias kyon_enemy_weapon_gm_enemy_init initialize
  def initialize(troop_id, member_index)
    kyon_enemy_weapon_gm_enemy_init(troop_id, member_index)
    @weapons = Array.new(KEW::WEAPON_MAX, 0) # Do Not Edit This Line!
  end

  def base_str
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].str if wid > 0 }
    return $data_enemies[@enemy_id].str + base
  end

  def base_dex
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].dex if wid > 0 }
    return $data_enemies[@enemy_id].dex + base
  end

  def base_agi
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].agi if wid > 0 }
    return $data_enemies[@enemy_id].agi + base
  end

  def base_int
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].int if wid > 0 }
    return $data_enemies[@enemy_id].int + base
  end

  def base_atk
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].atk if wid > 0 }
    return $data_enemies[@enemy_id].atk + base
  end

  def base_pdef
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].pdef if wid > 0 }
    return $data_enemies[@enemy_id].pdef + base
  end

  def base_mdef
    base = 0
    @weapons.each {|wid| base += $data_weapons[wid].mdef if wid > 0 }
    return $data_enemies[@enemy_id].mdef + base
  end

  def equip_weapon(pos, wid)
    return @weapons[pos] if pos > KEW::WEAPON_MAX - 1
    @weapons[pos] = $data_weapons[wid] ? wid : 0
  end
  def equip_weapons(*new_weapons) @weapons = new_weapons.flatten end
end

class Game_Troop
  def setup(troop_id)
    @enemies = []
    troopers = $data_troops[troop_id].members
    troopers.size.times do |trooper|
      next unless $data_enemies[trooper.enemy_id]
      @enemies << monster = Game_Enemy.new(troop_id, @enemies.size)
      next unless KEW.include?(monster.id)
      monster.equip_weapons(KEW.get_weapons(monster.id))
    end
  end
end

Términos de Uso

Lo pueden utilizar en toda clase de juego, pero si se lanzan al mundo comercial, pues, tendrán que pagar una módica tarifa. No olviden incluirme en sus créditos.

kyonides
PJ Secundario
PJ Secundario

Masculino
Costa Rica
RPG Maker : Xp
Mensajes : 146
Monedas : 388
Reputación : 7

Volver arriba Ir abajo

Volver arriba


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