#==============================================================================
# Bullpup Shooting Engine Weapons
#==============================================================================
#------------------------------------------------------------------------------
# Créditos: Leon-S.K --- ou --- Andre Luiz Marques Torres Micheletti
#==============================================================================
#------------------------------------------------------------------------------
# ARMAS A SEREM USADAS PELO SCRIPT
#------------------------------------------------------------------------------
module Weapons_To_Be_Used
#------------------------------------------------------------------------------.
# Para criar uma arma, copie: Armas[id] = [a, b, c, d, e, f] e mude:
# ID = Id da arma no database; a = id do item para ser o cartucho da arma
# b = maximo de balas em um cartucho; c = tempo de espera para o proximo tiro
# d = som de tiro, reload e no_ammo
# e = push back sofrido pelo tiro (em frames)
# f = peso da arma (1 muito leve ~ 4 muito pesado)
Armas = {}
Armas[1] = [17, 15, 50, "usp", 10, 1]
Armas[2] = [20, 32, 13, "ump45", 8, 2]
Armas[3] = [20, 32, 10, "mp5", 5, 2]
Armas[4] = [20, 40, 9, "mp7", 5, 2]
Armas[5] = [20, 50, 8, "p90", 5, 2]
Armas[6] = [19, 24, 14, "ak47",9, 3]
Armas[7] = [19, 24, 14, "m4a1", 9, 3]
Armas[8] = [18, 6, 85, "m3", 12, 2]
Armas[9] = [19, 10, 70, "awp", 15, 4]
Armas[10] = [19, 26, 13, "galil", 9, 2]
Armas[11] = [19, 26, 13, "famas", 9, 2]
Armas[12] = [21, 1, 90, "rocket", 20, 4]
Armas[13] = [3, 2, 2, "rocket", 2, 2]
#----------------------------------------------------------------------------
#~ Você pode ainda criar armas com efeito de area (explosivos)
#~ Colocando no comentario da arma => "area"
#~
#~ Você pode ainda criar armas com efeito de perfuração (sniper)
#~ Colocando no comentario da arma => "pierce x"
#~ Onde x é a qnt de inimigos que ela pode atravessar
#----------------------------------------------------------------------------
end
#==============================================================================
#------------------------------------------------------------------------------
# AREA NAO EDITAVEl!
#------------------------------------------------------------------------------
class Scene_Map < Scene_Base
include Weapons_To_Be_Used
alias my_start start
def start
my_start
create_global_weapons(Armas) if $weapons.nil?
end
def create_global_weapons(armas)
$weapons = []
armas.each { |arma|
p1 = $data_weapons[arma[0]]
p2 = $data_items[arma[1][0]]
p3 = arma[1][1]
p4 = arma[1][2]
p5 = arma[1][3]
p6 = arma[1][4]
p7 = arma[1][5]
$weapons.push(Abs_Weapon.new(p1, p2, p3, p4, p5, p6, p7))
}
end
end
#----------------------------------------------------------------------------------#
class Abs_Weapon
attr_accessor :recover
attr_accessor :magazine
attr_accessor :bullets
attr_accessor :max
attr_accessor :weapon
attr_accessor :iconset_id
attr_accessor :name
attr_accessor :wav_name
attr_accessor ushback
attr_reader :area
attr_reader ierce
attr_reader ierce_num
attr_reader :weight
def initialize(weapon, magazine, max, recover, wav_name, pushback, weight)
@weapon, @magazine,
@max, @recover, @wav_name = weapon, magazine, max, recover, wav_name
@bullets = 0; @iconset_id = @magazine.icon_index;
@Name = @weapon.name
@weight = weight
@pushback = pushback
@pierce = false; @area = false
if @weapon.note.include?("area")
@area = true
else
@area = false
end
if @weapon.note.include?("pierce=")
return if @weapon.note.include?("area")
number = @weapon.note.sub("pierce=","")
@pierce_num = number.to_i
@pierce = true
if @pierce_num == nil
@pierce_num = Module_Of_Config:ierce_Enemies
end
else
@pierce = false
end
end
def sniper?
if @weapon.note == "sniper"
@pierce = true if !@pierce
@pierce_num = Module_Of_Config::Sniper_Pierce if @pierce_num != Module_Of_Config::Sniper_Pierce
return true
end
return false
end
end
#----------------------------------------------------------------------------------#
class Game_Actor < Game_Battler
alias :my_def :change_equip
def change_equip(slot_id, item)
if slot_id == 0
for weapon in $weapons
break if item == nil
if weapon.weapon.id == item.id
$game_player.equipped_weapon = weapon
$game_player.equipped_weapon.bullets = 0 if $game_player.equipped_weapon.bullets.nil?
break
else
$game_player.equipped_weapon = nil
end
end
if item == nil
$game_player.equipped_weapon = nil
end
$game_player.weight = false
my_def(slot_id, item)
else
my_def(slot_id, item)
end
end
end