Войти на сайт
×
ТЕМА: (XP) Blue Magic
(XP) Blue Magic 16 года 7 мес. назад #18868
|
ФАНАТАМ ФФ
Скрипт синий магии [cut] #==============================================================================
# Individual Character Development - Blue Mage by Fomar0153
#==============================================================================
class Game_Party
attr_accessor :icd_blue_mages
attr_accessor :icd_blue_mages_all_skills
attr_accessor :icd_blue_mages_skills
alias fomar_icd_blue_mage_initialize initialize
def initialize
fomar_icd_blue_mage_initialize
@icd_blue_mages = [1] #ИД персонажа синего мага
@icd_blue_mages_all_skills = false #Все ли скилы являються
#Синими??
@icd_blue_mages_skills = [83, 87, 99] # ИД скилов
end
end
class Game_Actor Game_Battler
def skill_effect(user, skill)
super(user, skill)
if $game_party.icd_blue_mages.include?(self.id)
unless $game_party.icd_blue_mages_all_skills == true
if $game_party.icd_blue_mages_skills.include?(skill.id)
self.learn_skill(skill.id)
end
else
self.learn_skill(skill.id)
end
end
end
end Автор: Fomar0153 |
Администратор запретил публиковать записи гостям.
|
(XP) Blue Magic 16 года 4 мес. назад #21492
|
Вот , скрипт еще лучше первого,
www.atelier-rgss.com/RGSS/Demos/MOG_Blue_Magic.exe нужно лишь только дать синим скилам стихию (огонь, вода,и тд добавте еще Blue Magic) синих=)) Еще один хороший скрипт синий магии Автор:SerphirothSpawn ДЛЯ НОРМАЛЬНОЙ РАБОТЫ ТРЕБУЕТЬСЯ SDK!!! [cut] #==============================================================================
# ** Blue, Geomancy & Level Skills
#------------------------------------------------------------------------------
# SephirothSpawn
# Version 1.11
# 2007-02-10
# SDK : Version 2.0+, Part I
#------------------------------------------------------------------------------
# * Version History :
#
# Version 1 ---------------------------------------------------- (2006-08-24)
# Version 1.1 ------------------------------------------------- (2007-01-11)
# - Update & Bug Fix : Altered Skill Use Test & Enemy Level Bug
# Version 1.11 ------------------------------------------------ (2007-02-10)
# - Update : Updated to SDK 2.0
#------------------------------------------------------------------------------
# * Description :
#
# Blue Skills Allow you to learn new skills when character is targeted by
# skill. You can control which skills are blue, when characters can learn
# blue skills, which classes learn blue skills or manually control the
# actors that learn blue skills.
#
# Geomancy will give characters skills determinded by the current map or
# terrain tags. Is customizable for each actor, map and terrain.
#
# Level skills will only target people that are divisable by that level.
# It gives you the option to set the skills level for any skills.
#
# Enemy Levels - Enemy Levels will be randomly set depending on average
# party levels give or take a few levels. If Dynamic Enemies
# System exist, the level is based off that.
#------------------------------------------------------------------------------
# * Instructions :
#
# Place The Script Below the SDK and Above Main.
# To Customize your skills, refer to the customization instructions.
#------------------------------------------------------------------------------
# * Customization :
#
# ** Blue Magic **
#
# Setting Up Blue Skills
# - Blue_Skills = [skill_id, skill_id, ...]
# Setting Up Actors That Learn Blue Skills
# - Blue_Skill_Actors = [actor_id, actor_id, ...]
# Setting Up Classes That Learn Blue Skills
# - Blue_Skill_Classes = [class_id, class_id, ...]
#
# ** Geomancy **
#
# Setting Up Map ID Skills (For Specific Actors)
# - Geomancy_Actor_Map_ID_Skills = {
# actor_id = { map_id = [skill_id, ...], ... },
# ...
# }
# Setting Up Terrain ID Skills (For Specific Actors)
# - Geomancy_Actor_Terrain_Skills = {
# actor_id = { terrain_id = [skill_id, ...], ...},
# ...
# }
# Setting Up Up Map ID Class Skills (For Specific Class)
# - Geomancy_Class_Map_ID_Skills = {
# class_id = { map_id = [skill_id, ...], ... },
# ...
# }
# Setting Up Terrain ID Skills (For Specific Class)
# - Geomancy_Class_Terrain_Skills = {
# class_id = { terrain_id = [skill_id, ...], ...},
# ...
# }
#
# ** Level Skills **
#
# Setting Up Skills That Use Level
# - Level_Based_Skills = { skill_id = skill_level, ... }
#------------------------------------------------------------------------------
# * Syntax :
#
# Blue Skills (Is added to skills by default)
# - game_actor .blue_skills
#
# Setting Specific Actor During Game Play to Learn Blue Skills
# - game_actor .learn_blue_skills = true (LEARN) or false (DON T LEARN)
#------------------------------------------------------------------------------
# * Notes :
#
# If using the Skill Learn Display, make sure this script is below it.
#==============================================================================
#------------------------------------------------------------------------------
# * SDK Log Script
#------------------------------------------------------------------------------
SDK.log( Blue, Geomancy & Level Skills , SephirothSpawn , 1.11, 2007-02-10 )
SDK.check_requirements(2.0)
#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.enabled?( Blue, Geomancy & Level Skills )
#==============================================================================
# ** BGL_Skills
#==============================================================================
module BGL_Skills
#--------------------------------------------------------------------------
# ** Blue Skills
#
# * Blue Skills
# ~ Blue_Skills = [skill_id, skill_id, ...]
# * Actors that Learn Blue Magic
# ~ Blue_Skill_Actors = [actor_id, ...]
# * Classes that Learn Blue Magic
# ~ Blue_Skill_Classes = [class_id, class_id, ...]
#--------------------------------------------------------------------------
Blue_Skills = [81]
Blue_Skill_Actors = [1]
Blue_Skill_Classes = []
#--------------------------------------------------------------------------
# ** Geomancy
#
# * Actor Map ID Skills
# ~ actor_id = { map_id = [skill_id, ...], ... }
#
# * Actor Terrain Skills
# ~ actor_id = { terrain_id = [skill_id, ...], ... }
#
# * Class Map ID Skills
# ~ class_id = { map_id = [skill_id, ...], ... }
#
# * Class Terrain Skills
# ~ class = { terrain_id = [skill_id, ...], ... }
#--------------------------------------------------------------------------
Geomancy_Actor_Map_ID_Skills = {
}
Geomancy_Actor_Terrain_Skills = {1 = {5= [1]}
}
Geomancy_Class_Map_ID_Skills = {
}
Geomancy_Class_Terrain_Skills = {
}
#--------------------------------------------------------------------------
# ** Level Based Skills
#
# * Level Based Skills
# ~ skill_id = level
#--------------------------------------------------------------------------
Level_Based_Skills = {
}
end
#==============================================================================
# ** Game_Battler
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias_method :seph_bglskills_gmbtlr_se, :skill_effect
#--------------------------------------------------------------------------
# * Apply Skill Effects
#--------------------------------------------------------------------------
def skill_effect(user, skill)
# If Skill is Level Based Skills
if BGL_Skills::Level_Based_Skills.has_key?(skill.id)
# If Level is isn t divisible
unless self.level % BGL_Skills::Level_Based_Skills[skill.id] == 0
# Sets Miss
self.damage = Miss
return
end
end
# Original Skill Effects
seph_bglskills_gmbtlr_se(user, skill)
end
end
#==============================================================================
# ** Game_Actor
#==============================================================================
class Game_Actor Game_Battler
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_accessor :learn_blue_skills
attr_accessor :blue_skills
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias_method :seph_bglskills_gmactr_setup, :setup
alias_method :seph_bglskills_gmactr_skills, :skills
alias_method :seph_bglskills_gmactr_sl?, :skill_learn?
alias_method :seph_bglskills_gmactr_se, :skill_effect
#--------------------------------------------------------------------------
# * Setup
#--------------------------------------------------------------------------
def setup(actor_id)
# Set Up Blue Skills
@blue_skills = []
# Original Setup
seph_bglskills_gmactr_setup(actor_id)
end
#--------------------------------------------------------------------------
# * Determine if Finished Learning Skill
#--------------------------------------------------------------------------
def skill_learn?(skill_id)
# Return Original Test or Geomancy Skills Learned
return seph_bglskills_gmactr_sl?(skill_id) ||
self.get_geomancy_skills.include?(skill_id) ||
@blue_skills.include?(skill_id)
end
#--------------------------------------------------------------------------
# * Skills
#--------------------------------------------------------------------------
def skills
# Get Original Skills
n = seph_bglskills_gmactr_skills.dup
# Adds Geomancy Skills
n get_geomancy_skills
# Adds Blue Skills
n @blue_skills
# Returns Skills
return n.flatten.uniq.sort
end
#--------------------------------------------------------------------------
# * Geomancy Skills
#--------------------------------------------------------------------------
def get_geomancy_skills
# Creates Skills Array
skills = []
# Checks Actor Based Geomancy Map Skills
if (gams = BGL_Skills::Geomancy_Actor_Map_ID_Skills).has_key?(@actor_id)
# If Current Map
if gams[@actor_id].has_key?($game_map.id)
# Adds Map Skill(s)
skills gams[@actor_id][$game_map.id]
end
end
# Checks Actor Based Terrain Skills
if (gats = BGL_Skills::Geomancy_Actor_Terrain_Skills).has_key?(@actor_id)
# If Current Terrain
if gats[@actor_id].has_key?($game_player.terrain_tag)
# Adds Terrain Skill(s)
skills gats[@actor_id][$game_player.terrain_tag]
end
end
# Checks Class Based Geomancy Map Skills
if (gcms = BGL_Skills::Geomancy_Class_Map_ID_Skills).has_key?(@class_id)
# If Current Map
if gams[@class_id].has_key?($game_map.id)
# Adds Map Skill(s)
skills gams[@class_id][$game_map.id]
end
end
# Checks Actor Based Terrain Skills
if (gcts = BGL_Skills::Geomancy_Class_Terrain_Skills).has_key?(@class_id)
# If Current Terrain
if gats[@class_id].has_key?($game_player.terrain_tag)
# Adds Terrain Skill(s)
skills gats[@class_id][$game_player.terrain_tag]
end
end
# Returns Skills
return skills.flatten
end
#--------------------------------------------------------------------------
# * Skill Effect
#--------------------------------------------------------------------------
def skill_effect(user, skill)
# If Actor / Class Can Learn Skill or Actor Can Learn Skill
if BGL_Skills::Blue_Skill_Classes.include?(@class_id) ||
BGL_Skills::Blue_Skill_Actors.include?(@actor_id) ||
self.learn_blue_skills
# If Skill is a Blue Skill
if BGL_Skills::Blue_Skills.include?(skill.id)
# If Skill Not Learned
unless @blue_skills.include?(skill.id)
# Learn Skill
@blue_skills skill.id
# If Skill Learn Display Found
if SDK.enabled?( Skill Learn Display )
@learn_skills_pop = true
@learning_skills skill.id
end
end
end
end
# Original Skill Effect
seph_bglskills_gmactr_se(user, skill)
end
end
#==============================================================================
# ** Game_Enemy
#==============================================================================
class Game_Enemy Game_Battler
#--------------------------------------------------------------------------
# * Public Instance Variables
#--------------------------------------------------------------------------
attr_reader :level
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
alias_method :seph_bglskills_gmeny_init, :initialize
def initialize(troop_id, member_index)
# Original Initialization
seph_bglskills_gmeny_init(troop_id, member_index)
# If Dynamic Enemies Not Enabled
unless SDK.enabled?( Dynamic Enemies )
# Sets Up Random Level
n = 0
$game_party.actors.each {|a| n += a.level}
n /= $game_party.actors.size
range = (-3..3).to_a
n = [1, (n + range[rand(range.size)])].max
@level = n
end
end
end
#------------------------------------------------------------------------------
# * End SDK Enable Test
#------------------------------------------------------------------------------
end |
Администратор запретил публиковать записи гостям.
|
Модераторы: NeKotZima
Время создания страницы: 0.280 секунд