Partagez
Aller en bas
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6577
Age : 26
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

Overdrive Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
https://www.rpgmakervx-fr.com

Overdrive Empty Overdrive

le Mar 12 Aoû 2008 - 22:19
Ce script permet de faire un overdrive (genre FFX) Il faut le mettre au dessus de Main

Auteur => KGC Softwares
traducteur => Ojiro

Script =>
Spoiler:
Code:
# Script Overdrive (cf.FFX) traduit par Ojiro
# Voilà un script qui permet d'installer une jauge Overdrive
# qui se remplit selon les types : Aggresif, Tenace, Victorieux,
# Lache, Solo, Leade ou Revenant.
# Le type peut être modifié en cours de jeu grâce à :
# $game_actors [ID] overdrive_type = x
# A inserer dans une page d'évenement grâce à Insertion Script.
# ID est a remplacer par l'ID du joueur qui changera de type
# L'ID n'est pas la place du joueur dans l'équipe
# Mais le numéro que porte le personnage indiqué dans la liste
# des héros.
# "x" est a remplacer par le numéro du type qui sont :
# 0..Aggresif 1..Tenace 2..Victorieux 3..Lache 4..Solo
# 5..Leader 6..Revenant
# La jauge se remplira en fonction du type :
# Aggressif > Dommage d'une attaque porté sur un ennemi
# Tenace > Dommage d'une attaque porté sur vous
# Victorieux > Lors d'une victoire d'un combat
# Lache > Lors d'une fuite
# Solo > Lorsque le joueur est seul au combat
# Leader > Lors de n'importe quel action
# Revenant > Lorsque l'on meurt
# Ensuite pour définir une technique Overdrive il faut tout
# d'abord ajouter un attribut dans Système que vous
# appellez Overdrive
# Et ensuite il suffira de cocher l'attribut Overdrive
# pour les techniques Overdrives dans la liste des skills.
# Et les faires apprendre a vos personnage comme des techniques
# normales sauf qu'elles ne pourront pas être utilisés
# si la jauge n'est pas pleine.
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/ ?Overdrive - KGC_OverDrive? Traduit par Ojiro
#_/----------------------------------------------------------------------------
#_/ Jauge privé d'un joueur lui permettant d'activer une technique unique.
#_/============================================================================
#==============================================================================
# ? Paramètres ?
#==============================================================================
#===============================================================
#                         
#                www.rpgmakervx-fr.com                                         
#     
#===============================================================

module KGC
# ?Jauge Max
# Indique la valeur pour que la jauge soit pleine
OD_jauge_MAX = 1000
# ?Progression de la barre Si
# Dépend du Drive Mode du joueur
# Pour le 0 et 1, le Drive s'effectue selon la valeurs des dommages reçus.
OD_GAIN_RATE = [10, 30, 200, 100, 160, 40, 160]
# ?jauge d'Overdrive incliné
OD_jauge_SLANT = true
# ?Position Y de la jauge overdrive en non Combat
OD_jauge_OFF_Y = 26
# ?Position Y de la jauge overdrive en Combat
OD_jauge_OFF_Y_BATTLE = 26
# ?Barre caché en non Combat / True (Vrai) ou False (Faux)
OD_jauge_HIDE = false
end
class Window_Base < Window
# ?Image de la jauge Overdrive
@@_od_jauge = RPG::Cache.picture("od_gauge.png")
end
#???????????????????????????????????????
$game_special_elements = {}
$imported = {}
$data_states = load_data("Data/States.rxdata")
$data_system = load_data("Data/System.rxdata")
$imported["OverDrive"] = true
# OverDrive??
$game_special_elements["overdrive"] = $data_system.elements.index("Overdrive")
#???????????????????????????????????????
#==============================================================================
# ¦ Game_Battler
#==============================================================================
class Game_Battler
#--------------------------------------------------------------------------
# ? Exécute le processus d'origineExécute le processus d'origine?????
#--------------------------------------------------------------------------
attr_accessor :base_damage # Valeur des Dommmages de Base
#--------------------------------------------------------------------------
# ? Activation de l'Overdrive
#--------------------------------------------------------------------------
alias skill_can_use_KGC_OverDrive skill_can_use?
def skill_can_use?(skill_id)
# Activation de l'Overdrive
if self.is_a?(Game_Actor)
skill = $data_skills[skill_id]
if skill != nil && skill.element_set.include?($game_special_elements["overdrive"])
if self.overdrive < KGC::OD_jauge_MAX
return false
end
end
end
# Exécute le processus d'origine
return skill_can_use_KGC_OverDrive(skill_id)
end
#--------------------------------------------------------------------------
# ? Application effective d'une Aggresif normale
#--------------------------------------------------------------------------
alias attack_effect_KGC_OverDrive attack_effect
def attack_effect(attacker)
@base_damage = nil
# Exécute le processus d'origine
result = attack_effect_KGC_OverDrive(attacker)
if @base_damage == nil
# Retient les dommages de base d'origine
@base_damage = [attacker.atk - self.pdef / 2, 0].max *
(20 + attacker.str) / 20
end
# Dommages reçus
if result && self.damage.is_a?(Numeric)
# Augmentation d'Aggresif
if attacker.is_a?(Game_Actor) && self.is_a?(Game_Enemy) &&
attacker.overdrive_type == 0 && self.base_damage > 0
# Calcul du Drive
od_up = [[self.damage * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min
# Drive
attacker.overdrive += od_up
# Lors des dégâts reçus
elsif attacker.is_a?(Game_Enemy) && self.is_a?(Game_Actor) &&
self.overdrive_type == 1 && self.base_damage > 0
od_up = [self.damage * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max
self.overdrive += od_up
end
end
return result
end


Dernière édition par Coco-Drift le Lun 1 Sep 2008 - 12:06, édité 1 fois
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6577
Age : 26
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

Overdrive Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
https://www.rpgmakervx-fr.com

Overdrive Empty Re: Overdrive

le Mar 12 Aoû 2008 - 22:20
=> SUITE ET FIN <=

Spoiler:
Code:
#--------------------------------------------------------------------------
# ? Application effective de la technique
#--------------------------------------------------------------------------
alias skill_effect_KGC_OverDrive skill_effect
def skill_effect(user, skill)
@base_damage = nil
# Exécute le processus d'origine
result = skill_effect_KGC_OverDrive(user, skill)
if @base_damage == nil
# Calcul de la Puissance
power = skill.power + user.atk * skill.atk_f / 100
if power > 0
power -= self.pdef * skill.pdef_f / 200
power -= self.mdef * skill.mdef_f / 200
power = [power, 0].max
end
# Calcul d'augmentation en pourcentage
rate = 20
rate += (user.str * skill.str_f / 100)
rate += (user.dex * skill.dex_f / 100)
rate += (user.agi * skill.agi_f / 100)
rate += (user.int * skill.int_f / 100)
# Retient les dommages de base
@base_damage = power * rate / 20
end
# Lors des Tenaces reçus
if result && self.damage.is_a?(Numeric)
# Augmentation des dégâts
if user.is_a?(Game_Actor) && self.is_a?(Game_Enemy) &&
user.overdrive_type == 0 && self.base_damage > 0
# Calcul du Drive
od_up = [[self.damage * KGC::OD_GAIN_RATE[0] * 10 / self.base_damage, 1].max, 160].min
# Drive
user.overdrive += od_up
# Lors des Tenaces reçus
elsif user.is_a?(Game_Enemy) && self.is_a?(Game_Actor) &&
self.overdrive_type == 1 && self.base_damage > 0
od_up = [self.damage * KGC::OD_GAIN_RATE[1] * 10 / self.maxhp, 1].max
self.overdrive += od_up
end
end
# Lors de l'utilisation de l'Overdrive
if user.is_a?(Game_Actor) && skill.element_set.include?($game_special_elements["overdrive"])
user.overdrive = 0
end
return result
end
end
#???????????????????????????????????????
#==============================================================================
# ¦ Game_Actor
#==============================================================================
class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ? Installation
#--------------------------------------------------------------------------
alias setup_KGC_OverDrive setup
def setup(actor_id)
# Exécute le processus d'origine
setup_KGC_OverDrive(actor_id)
@overdrive, @overdrive_type = 0, 0
end
#--------------------------------------------------------------------------
# ? Acquisition d'une jauge d'overdrive
#--------------------------------------------------------------------------
def overdrive
@overdrive = 0 if @overdrive == nil
return @overdrive
end
#--------------------------------------------------------------------------
# ? Opération de la jauge Overdrive
#--------------------------------------------------------------------------
def overdrive=(value)
@overdrive = 0 if @overdrive == nil
@overdrive = [[value, 0].max, KGC::OD_jauge_MAX].min
end
#--------------------------------------------------------------------------
# ? Acquisition du type d'Overdrive
#--------------------------------------------------------------------------
def overdrive_type
@overdrive_type = 0 if @overdrive_type == nil
return @overdrive_type
end
#--------------------------------------------------------------------------
# ? Opération du type d'Overdrive
#--------------------------------------------------------------------------
def overdrive_type=(value)
@overdrive_type = 0 if @overdrive_type == nil
@overdrive_type = value
end
end
#???????????????????????????????????????
#==============================================================================
# ¦ Window_Base
#==============================================================================
class Window_Base < Window
#--------------------------------------------------------------------------
# ? Initialisation
#--------------------------------------------------------------------------
alias initialize_KGC_OverDrive_Base initialize
def initialize(x, y, width, height)
@od_jauge = @@_od_jauge
@od_g_width = @od_jauge.width / 3
@od_g_height = (@od_jauge.height - 2) / 3
# Exécute le processus d'origine
initialize_KGC_OverDrive_Base(x, y, width, height)
end
#--------------------------------------------------------------------------
# ? Image de la jauge overdrive
#--------------------------------------------------------------------------
def _od_jauge
return @@_od_jauge
end
#--------------------------------------------------------------------------
# ? Placement de la jauge
#--------------------------------------------------------------------------
def _od_jauge=(new_bitmap)
@@_od_jauge.dispose
@@_od_jauge = new_bitmap
end
#--------------------------------------------------------------------------
# ? Acquisition de l'image
#--------------------------------------------------------------------------
def od_jauge
return @od_jauge
end
#--------------------------------------------------------------------------
# ? Mise en place de la jauge
#--------------------------------------------------------------------------
def od_jauge=(new_bitmap)
@od_jauge = new_bitmap
end
#--------------------------------------------------------------------------
# ? Nom
#--------------------------------------------------------------------------
alias draw_actor_name_KGC_OverDrive draw_actor_name
def draw_actor_name(actor, x, y)
unless (!$game_temp.in_battle && KGC::OD_jauge_HIDE)
draw_actor_od_jauge(actor, x, y, 120)
end
# Exécute le processus d'origine
draw_actor_name_KGC_OverDrive(actor, x, y)
end
#--------------------------------------------------------------------------
# ? Jauge OD
#--------------------------------------------------------------------------
def draw_actor_od_jauge(actor, x, y, width)
# Jauge
if $game_temp.in_battle && self.is_a?(Window_BattleStatus)
@gs_od[actor.index] = actor.overdrive if @gs_od[actor.index] == nil
dx = actor.screen_x + 52 - @od_g_width
dy = y + ($game_temp.in_battle ? KGC::OD_jauge_OFF_Y_BATTLE : KGC::OD_jauge_OFF_Y)
dx -= 16 if $imported["HPSPAlter"] && !KGC::HPSP_DRAW_NAME_LUMP
gw = @gs_od[actor.index] * @od_g_width / KGC::OD_jauge_MAX
maximum = @gs_od[actor.index] == KGC::OD_jauge_MAX
else
@jauge_x = 0
dx = x + width - @od_g_width - 13
dy = y + ($game_temp.in_battle ? KGC::OD_jauge_OFF_Y_BATTLE : KGC::OD_jauge_OFF_Y)
gw = actor.overdrive * @od_g_width / KGC::OD_jauge_MAX
maximum = actor.overdrive == KGC::OD_jauge_MAX
end
# Schéma
if KGC::OD_jauge_SLANT
self.contents.fill_rect(dx, dy, @od_g_width + 7, 6, Color.new(0, 0, 0, 0))
# Graduation
gy = @od_g_height + 1
for i in 0...(@od_g_height + 2)
self.contents.blt(dx + i, dy + gy - i, @od_jauge, Rect.new(0, gy - i, @od_g_width + 2, 1))
end
# Effet de Substance
gy -= 1
gy2 = @od_g_height * (maximum ? 3 : 2) + 1
for i in 0...@od_g_height
self.contents.blt(dx + i + 2, dy + gy - i, @od_jauge, Rect.new(@jauge_x, gy2 - i, gw, 1))
end
# Normal
else
self.contents.fill_rect(dx, dy, @od_g_width + 2, @od_g_height + 2, Color.new(0, 0, 0, 0))
self.contents.blt(dx, dy, @od_jauge, Rect.new(0, 0, @od_g_width + 2, @od_g_height + 2))
gy2 = @od_g_height * (maximum ? 2 : 1) + 2
self.contents.blt(dx + 1, dy + 1, @od_jauge, Rect.new(@jauge_x, gy2, gw, @od_g_height))
end
end
end
#???????????????????????????????????????
#==============================================================================
# ¦ Window_BattleStatus
#==============================================================================
class Window_BattleStatus < Window_Base
#--------------------------------------------------------------------------
# ? Initialisation
#--------------------------------------------------------------------------
alias initialize_KGC_OverDrive initialize
def initialize
@jauge_x, @gs_od = 0, []
@od_g_width = @@_od_jauge.width / 3
@od_g_height = (@@_od_jauge.height - 2) / 3
# Exécute du processus d'origine
initialize_KGC_OverDrive
end
#--------------------------------------------------------------------------
# ? Rafraichissement
#--------------------------------------------------------------------------
alias refresh_KGC_OverDrive refresh
def refresh
# Exécute le processus d'origine
refresh_KGC_OverDrive
for i in 0...$game_party.actors.size
@gs_od = $game_party.actors.overdrive
end
end
#--------------------------------------------------------------------------
# ? Renouvelement de la graduation
#--------------------------------------------------------------------------
alias update_KGC_OverDrive update
def update
# Exécute le processus d'origine
update_KGC_OverDrive
# L'image de la gauge est laissée
unless $imported["HPSPAlter"]
@jauge_x -= [@od_g_width / 20, 1].max
@jauge_x = @od_g_width * 2 if @jauge_x < 0
end
for i in 0...$game_party.actors.size
draw_actor_od_jauge($game_party.actors, 0, 0, 120)
end
end
end
#???????????????????????????????????????
#==============================================================================
# ¦ Scene_Battle
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ? Fin du combat
# result : Résultat (0:Victorieux 1:Lache 2Rire grinçantéfaite)
#--------------------------------------------------------------------------
alias battle_end_KGC_OverDrive battle_end
def battle_end(result)
case result
when 0 # Victorieux
for actor in $game_party.actors
next unless actor.exist?
# Quand le type d'OD est Victorieux
if actor.overdrive_type == 2
actor.overdrive += KGC::OD_GAIN_RATE[2]
end
end
when 1 # Lache
for actor in $game_party.actors
next unless actor.exist?
# Quand le type d'OD est Lache
if actor.overdrive_type == 3
actor.overdrive += KGC::OD_GAIN_RATE[3]
end
end
end
# Exécute le processus d'origine
battle_end_KGC_OverDrive(result)
end
end
#???????????????????????????????????????
#==============================================================================
# ¦ Scene_Battle
#==============================================================================
class Scene_Battle
#--------------------------------------------------------------------------
# ? Renouvelement de la graduation
#--------------------------------------------------------------------------
alias update_phase4_step2_KGC_OverDrive update_phase4_step2
def update_phase4_step2
if @active_battler.is_a?(Game_Actor)
# Augmentation
case @active_battler.overdrive_type
when 4 # Solo
alone = true
for actor in $game_party.actors
next if actor == @active_battler
# S'il y a un survivant, ce n'est pas considéré comme solo.
if actor.exist?
alone = false
break
end
end
od_up = alone ? KGC::OD_GAIN_RATE[4] : 0
when 5 # Action
od_up = KGC::OD_GAIN_RATE[5]
when 6 # Si Revenant
od_up = @active_battler.hp <= @active_battler.maxhp / 4 ? KGC::OD_GAIN_RATE[6] : 0
else
od_up = 0
end
@active_battler.overdrive += od_up
end
# Exécute le processus d'origine
update_phase4_step2_KGC_OverDrive
end
end

Ressource nécessaire : Overdrive Od_gau10
à appeler "od-gauge.png"


Dernière édition par Coco-Drift le Lun 1 Sep 2008 - 12:13, édité 3 fois
pinguino21v
pinguino21v
Membre

Nombre de messages : 199
Age : 29
Localisation : Vous êtes ici
Distinction : aucune
Date d'inscription : 22/07/2008

Overdrive Empty Re: Overdrive

le Mar 12 Aoû 2008 - 22:45
Script fortement intéressant, mais je crains qu'il soit incompatible avec un certain nombre d'autres, en particulier ceux qui modifient l'interface du menu (déroulants...) ou des combats (faceset...).
Orbital
Orbital
Membre

Nombre de messages : 141
Age : 28
Localisation : Euh, tu vois la France ? l'Isère ? grenoble ? SMH ? ma maison ? le bureau ? le PC ? bah c'est là
Distinction : aucune
Date d'inscription : 09/08/2008

Overdrive Empty Re: Overdrive

le Mar 12 Aoû 2008 - 23:53
Arf, décidement t'es mon héros coco XD
Orbital
Orbital
Membre

Nombre de messages : 141
Age : 28
Localisation : Euh, tu vois la France ? l'Isère ? grenoble ? SMH ? ma maison ? le bureau ? le PC ? bah c'est là
Distinction : aucune
Date d'inscription : 09/08/2008

Overdrive Empty Re: Overdrive

le Mer 13 Aoû 2008 - 20:57
Bon après un test, ça ne marche pas...

(désolé pour le double post mais je vais pas éditer mon message où j'ai mis merci, et personne verrai ce message)

Donc voilà, déjà il faut mettre une image "od_gauge" dans graphic/system (je l'ai mis là dedans).

Ensuite, même après avoir créé cette jauge et l'avoir mise dans le dossier cité ci-dessus, j'ai toujours un message d'erreur à la ligne 58. Je sais pas d'où ça vient mais le message apparait au lancement du jeu, même pas en début de combat...merci de m'aider

[en attendant je cherche un autre script pour le proposer]
Sianobel
Sianobel
Membre

Nombre de messages : 25
Age : 32
Localisation : Bruxelles
Distinction : aucune
Date d'inscription : 24/06/2008
http://perhiliel.evoconcept.net/

Overdrive Empty Re: Overdrive

le Lun 18 Aoû 2008 - 14:09
J'ai trouvé celui ci qui faut encore bien tester mais qui fonctionne chez moi (à première vue)

Spoiler:
Code:
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
#_/ ◆ Overdrive System - KGC_OverDrive ◆ VX ◆
#_/ ◇ Last update : 2008/03/13 ◇
#_/ ◆ Translation by Touchfuzzy ◆
#_/ ◆ Additional polish by Mr. Anonymous ◆
#_/-----------------------------------------------------------------------------
#_/ ★ 2008/04/09 UPDATE [MRA] ★
#_/ The defend command may now increase the Overdrive guage. Also added an
#_/ option to have sound effects when the guage becomes full.
#_/-----------------------------------------------------------------------------
#_/ ★ 2008/03/13 UPDATE [KCG] ★
#_/ Several minor bugs fixed.
#_/-----------------------------------------------------------------------------
#_/ This script allows the designer to create skills that are not usable in
#_/ battle until a character gains enough points from specified actions to use
#_/ them. To set up a skill as an "Overdrive" skill (which doesn't appear until
#_/ the Overdrive Gauge is full), go into the database, click the Skills tab,
#_/ locate the skill you desire, and then enter <overdrive> into the "Notes"
#_/ text box. Also, you may desire some skills to increase the Overdrive Gauge
#_/ more than others.
#_/ To do so, enter <OD_GAIN n%> (where n = a number) into the desired skill's
#_/ "Notes" box. Example: <OD_GAIN 200%> would increase Overdrive Points
#_/ gained from Attack Gain Rate (80 by default) by 200 percent (x2).
#_/ The formula for this is [attackgainrate * n / 100]
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_

#===============================================================================
# ★ Customization ★
#===============================================================================

module KGC
module OverDrive

# ◆ Maximum Gauge Points ◆
# This affects the amount of OP (Overdrive Points) required to fill the
# Overdrive Gauge. Default: GAUGE_MAX = 1000
GAUGE_MAX = 150

# ◆ Default OP Gain Rates ◆
# You may specify the amount of OP battlers will be rewarded for specific
# actions performed.
GAIN_RATE = [
1, # 0 Gained per attack.
75, # 1 Gained for taking damage.
# This is per 100% MHP of damage taken, so with 500 you would have
# to take 2 times your MHP to fill a 1000 GAUGE_MAX
5, # 2 Gained for defeating an enemy.
0, # 3 Gained each time you run away from a fight.
5, # 4 Gained for each round spent while fighting solo in battle, either
# being the only character or being the last one alive.
1, # 5 Gained for taking any action in a round
3, # 6 Gained for each round surviving with 25% or less HP remaining.
0, # 7 Gained for each round for guarding.
]

# ◆ Default Actor OD Increase Options ◆
# Default Overdrive types that affect player-characters. The numbers in the
# brackets [] are chosen from the GAIN_RATE above, to the right of the #.
# It appears these numbers "stack" when setting up an individual character's
# Overdrive parameters.
DEFAULT_ACTOR_DRIVE_TYPE = [0, 1, 6, 7]

# ◆ Default Enemy OD Increase Options ◆
# Default Overdrive types that affect enemies. The numbers in the brackets []
# are chosen from the GAIN_RATE above, to the right of the #.
DEFAULT_ENEMY_DRIVE_TYPE = [0, 1, 4, 5, 6]

# ◆ OD Gauge Colors ◆
# Allows you to change the color of the overdrive gauges.
# The color can also be determined by a numerical expression.
# Example: GAUGE_NORMAL_START_COLOR = Color.new(255, 0, 0) <- This is red.
# If you've worked with HTML or image editing software, this should be
# fairly familiar.
GAUGE_NORMAL_START_COLOR = 14
GAUGE_NORMAL_END_COLOR = 6
GAUGE_MAX_START_COLOR = 10
GAUGE_MAX_END_COLOR = 2

# ◆ Empty OD Gauge Upon Death ◆
# This toggle affects wether the OP Gauge is reset to zero once an actor
# dies. true = Reset to 0. false = Gauge remains persistant.
EMPTY_ON_DEAD = true

# ◆ Hide Actor OD Gauge ◆
# Hide the gauge for individual characters. The number of the character in
# the Actors Database is inserted in the brackets.
# Example: HIDE_GAUGE_ACTOR = [2] would always hide the gauge for the second
# actor in the database. (Simple stuff.)
HIDE_GAUGE_ACTOR = []

# ◆ Hide OD Gauge in Menu ◆
# This toggle allows you to hide the Overdrive gauge from the command menu.
# true = Gauge is hidden.
# false = Gauge remains persistant even in menu.
HIDE_GAUGE_NOT_IN_BATTLE = true

# ◆ Hide OD Gauge When Actor Lacks OD Skills ◆
# This toggle allows you to hide the gauge if a character has no Overdrive
# skills in his/her arsenal.
# true = Gauge is hidden.
# false = Gauge is not hidden.
HIDE_GAUGE_NO_OD_SKILLS = false

# ◆ Prevent Actors Without OD Skills From Gaining OP ◆
# This toggle stops OP from being gained for characters that have no Overdrive
# skills when HIDE_GAUGE_NO_OD_SKILLS = true.
NOT_GAIN_GAUGE_HIDING = false

# ◆ Hide OD Skills When Actor Lacks Max OP ◆
# This toggle allows you to specify wether skills that do not yet meet the
# required OP are visible.
# true = Skills are hidden
# false = skills are not hidden.
HIDE_SKILL_LACK_OF_GAUGE = false

# ◆ Play sound on OD Max ◆
# Play sound on gauge max.(Filename, Pitch, Volume)
ODMAX_SOUND = RPG::SE.new("Flash2", 100, 150)
end
end

#------------------------------------------------------------------------------#

$imported = {} if $imported == nil
$imported["OverDrive"] = true

module KGC::OverDrive
module Type
ATTACK = 0
DAMAGE = 1
VICTORY = 2
ESCAPE = 3
ALONE = 4
ACTION = 5
FATAL = 6
GUARD = 7
end

module Regexp
module Skill
# * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * #
# Unless you know what you're doing, it's best not to alter anything beyond #
# this point, as this only affects the tags used for "Notes" in database. #
# * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * #

# Whatever word(s) are after the separator ( | ) in the following lines are
# what are used to determine what is searched for in the "Notes" section of a
# skill to see if it is an Overdrive skill.
# Default Overdrive tag is <overdrive>
# Default OD_GAIN_RATE is <OD_GAIN>

OVER_DRIVE = /<(?:OVER_DRIVE|overdrive)[ ]*(\d+)?>/i
OD_GAIN_RATE = /<(?:OD_GAIN_RATE|odgain)[ ]*(\d+)[%%]?>/i
end
end
end

# In events if you wish to use scripting to increase the OD Gauge for a
# character you just use this line "gain_actor_od_gauge(ID, IG)"
# ID = Actor ID Number,
# IG = number of points to increase gauge
# Inserting -1 in ID makes it affect all characters.

# In events if you wish to use scripting to increase the OD Gauge for an
# enemy you just use this line "gain_enemy_od_gauge(ID, IG)"
# ID = Enemy ID Number in group 0-7
# IG = number of points to increase gauge
# Inserting -1 in ID makes it affect all enemies.

# In events if you wish to use scripting to change what increases the OD gauge
# for a character use this line "set_actor_drive_type(ID, [ODT])"
# ID = Actor ID Number
# ODT = numbers of types of Overdrive adders to use
# If the [ODT] is omitted it goes back to the defaults

# In events if you wish to use scripting to change what increases the OD gauge
# for an us this line "set_enemy_drive_type(ID, [ODT])"
# ID = Enemy ID Number in group 0-7
# ODT = numbers of types of Overdrive adders to use
# If the [ODT] is omitted it goes back to the defaults

#==============================================================================
# □ KGC::Commands
#==============================================================================

module KGC::Commands
module_function
#--------------------------------------------------------------------------
# ○ Actor Overdrive Gain Gauge
# actor_id : Actor ID (-1 : Entire Party)
# value : Increase Amount (Subtraction works as well)
#--------------------------------------------------------------------------
def gain_actor_od_gauge(actor_id, value)
if actor_id == -1
# A all living members gauge is operated.
$game_party.existing_members.each { |actor|
actor.overdrive += value
}
else
actor = $game_actors[actor_id]
actor.overdrive += value if actor != nil && actor.exist?
end
end
#--------------------------------------------------------------------------
# ○ Enemy Overdrive Gain Gauge
# enemy_index : Enemy index (-1 : All Enemies)
# value : Increase Amount (Subtraction works as well)
#--------------------------------------------------------------------------
def gain_enemy_od_gauge(enemy_index, value)
if enemy_index == -1
# A all living enemies gauge is operated.
$game_troop.existing_members.each { |enemy|
enemy.overdrive += value
}
else
enemy = $game_troop.members[enemy_index]
enemy.overdrive += value if enemy != nil && enemy.exist?
end
end
#--------------------------------------------------------------------------
# ○ Set Actor Drive Type
# actor_id : Actor ID (-1 : Entire Party)
# types : Array of drive type ( When omitted: Initialization. )
#--------------------------------------------------------------------------
def set_actor_drive_type(actor_id, types = nil)
if actor_id == -1
# A drive type all members is changed.
$game_party.members.each { |actor|
actor.drive_type = types
}
else
actor = $game_actors[actor_id]
actor.drive_type = types if actor != nil
end
end
#--------------------------------------------------------------------------
# ○ Set Enemy Drive Type
# actor_id : Enemy ID (-1 : All Enemies)
# types : Array of drive type ( When omitted: Initialization. )
#--------------------------------------------------------------------------
def set_enemy_drive_type(enemy_index, types = nil)
if enemy_index == -1
# A drive type all enemies is changed.
$game_troop.members.each { |enemy|
enemy.drive_type = types
}
else
enemy = $game_troop.members[enemy_index]
enemy.drive_type = types if enemy != nil
end
end
end

#==============================================================================
# ■ RPG::Skill
#==============================================================================

class RPG::Skill < RPG::UsableItem
#--------------------------------------------------------------------------
# ○ Overdrive cache generation
#--------------------------------------------------------------------------
def create_overdrive_cache
@__is_overdrive = false
@__od_cost = KGC::OverDrive::GAUGE_MAX
@__od_gain_rate = 100

self.note.split(/[\r\n]+/).each { |line|
case line
when KGC::OverDrive::Regexp::Skill::OVER_DRIVE
# Overdrive
@__is_overdrive = true
@__od_cost = $1.to_i if $1 != nil
when KGC::OverDrive::Regexp::Skill::OD_GAIN_RATE
# Gauge increase rate
@__od_gain_rate = $1.to_i
end
}
# Unless OverDrive doesn't consume gauge
unless @__is_overdrive
@__od_cost = 0
end
end
#--------------------------------------------------------------------------
# ○ OverDrive is a skill?
#--------------------------------------------------------------------------
def overdrive?
create_overdrive_cache if @__is_overdrive == nil
return @__is_overdrive
end
#--------------------------------------------------------------------------
# ○ Consumption of drive gauge
#--------------------------------------------------------------------------
def od_cost
create_overdrive_cache if @__od_cost == nil
return @__od_cost
end
#--------------------------------------------------------------------------
# ○ The drive gauge increase rate
#--------------------------------------------------------------------------
def od_gain_rate
create_overdrive_cache if @__od_gain_rate == nil
return @__od_gain_rate
end
end

#==============================================================================
# ■ Game_Battler
#==============================================================================

class Game_Battler
#--------------------------------------------------------------------------
# ● Open Global Variable
#--------------------------------------------------------------------------
attr_writer :drive_type # Drive Type
#--------------------------------------------------------------------------
# ○ Acquire amount of drive gauge
#--------------------------------------------------------------------------
def overdrive
@overdrive = 0 if @overdrive == nil
return @overdrive
end
#--------------------------------------------------------------------------
# ○ Drive gauge maximum amount acquisition
#--------------------------------------------------------------------------
def max_overdrive
return KGC::OverDrive::GAUGE_MAX
end
#--------------------------------------------------------------------------
# ○ ドライブゲージの操作
#--------------------------------------------------------------------------
def overdrive=(value)
@overdrive = [[value, max_overdrive].min, 0].max
end

#--------------------------------------------------------------------------
# ○ Sound played on gauge max
#--------------------------------------------------------------------------
def odmax_sound
return KGC::OverDrive::ODMAX_SOUND
end

#------------------------#
def odmax_sound_played?
return false
end
#------------------------#

#--------------------------------------------------------------------------
# ○ ドライブタイプの取得
#--------------------------------------------------------------------------
def drive_type
return []
end
#--------------------------------------------------------------------------
# ○ OverDrive スキル習得済み判定
#--------------------------------------------------------------------------
def overdrive_skill_learned?
return true
end
Sianobel
Sianobel
Membre

Nombre de messages : 25
Age : 32
Localisation : Bruxelles
Distinction : aucune
Date d'inscription : 24/06/2008
http://perhiliel.evoconcept.net/

Overdrive Empty Re: Overdrive

le Lun 18 Aoû 2008 - 14:10
Spoiler:
Code:
#--------------------------------------------------------------------------
# ○ ゲージ表示判定
#--------------------------------------------------------------------------
def od_gauge_visible?
return false
end
#--------------------------------------------------------------------------
# ○ ゲージ増加可否判定
#--------------------------------------------------------------------------
def can_gain_overdrive?
return true
end
#--------------------------------------------------------------------------
# ○ 攻撃時増加判定
#--------------------------------------------------------------------------
def drive_attack?
return drive_type.include?(KGC::OverDrive::Type::ATTACK)
end
#--------------------------------------------------------------------------
# ○ 被ダメージ時増加判定
#--------------------------------------------------------------------------
def drive_damage?
return drive_type.include?(KGC::OverDrive::Type::DAMAGE)
end
#--------------------------------------------------------------------------
# ○ 勝利時増加判定
#--------------------------------------------------------------------------
def drive_victory?
return drive_type.include?(KGC::OverDrive::Type::VICTORY)
end
#--------------------------------------------------------------------------
# ○ 逃走時増加判定
#--------------------------------------------------------------------------
def drive_escape?
return drive_type.include?(KGC::OverDrive::Type::ESCAPE)
end
#--------------------------------------------------------------------------
# ○ 孤独時増加判定
#--------------------------------------------------------------------------
def drive_alone?
return drive_type.include?(KGC::OverDrive::Type::ALONE)
end
#--------------------------------------------------------------------------
# ○ 行動時増加判定
#--------------------------------------------------------------------------
def drive_action?
return drive_type.include?(KGC::OverDrive::Type::ACTION)
end
#--------------------------------------------------------------------------
# ○ 瀕死時増加判定
#--------------------------------------------------------------------------
def drive_fatal?
return drive_type.include?(KGC::OverDrive::Type::FATAL)
end
#--------------------------------------------------------------------------
# ○ Determine guard
#--------------------------------------------------------------------------
def drive_guard?
return drive_type.include?(KGC::OverDrive::Type::GUARD)
end
#--------------------------------------------------------------------------
# ● ステートの付加
# state_id : ステート ID
#--------------------------------------------------------------------------
alias add_state_KGC_OverDrive add_state
def add_state(state_id)
add_state_KGC_OverDrive(state_id)
reset_overdrive_on_dead if dead?
end
#--------------------------------------------------------------------------
# ○ スキルの消費ドライブゲージ計算
# skill : スキル
#--------------------------------------------------------------------------
def calc_od_cost(skill)
return 0 unless skill.is_a?(RPG::Skill)

return skill.od_cost
end
#--------------------------------------------------------------------------
# ● スキルの使用可能判定
# skill : スキル
#--------------------------------------------------------------------------
alias skill_can_use_KGC_OverDrive? skill_can_use?
def skill_can_use?(skill)
return false unless skill_can_use_KGC_OverDrive?(skill)

return false if calc_od_cost(skill) > overdrive
return true
end
#--------------------------------------------------------------------------
# ● ダメージの反映
# user : スキルかアイテムの使用者
# 呼び出し前に @hp_damage、@mp_damage、@absorbed が設定されていること。
#--------------------------------------------------------------------------
alias execute_damage_KGC_OverDrive execute_damage
def execute_damage(user)
execute_damage_KGC_OverDrive(user)
increase_overdrive(user)
end
#--------------------------------------------------------------------------
# ○ 死亡時ドライブゲージ初期化処理
#--------------------------------------------------------------------------
def reset_overdrive_on_dead
return unless KGC::OverDrive::EMPTY_ON_DEAD
self.overdrive = 0
end
#--------------------------------------------------------------------------
# ○ ドライブゲージ増加処理
# attacker : 攻撃者
#--------------------------------------------------------------------------
def increase_overdrive(attacker = nil)
return unless attacker.is_a?(Game_Battler) # 攻撃者がバトラーでない
return if self.class == attacker.class # 攻撃側と防御側が同じ
return if hp_damage == 0 && mp_damage == 0 # ダメージなし

if can_gain_overdrive?
increase_attacker_overdrive(attacker)
increase_defender_overdrive(attacker)
end
reset_overdrive_on_dead if dead?
end

#--------------------------------------------------------------------------
# ○ Increase Attacker's Overdrive
# attacker : Attacker
#--------------------------------------------------------------------------
def increase_attacker_overdrive(attacker)
return unless attacker.drive_attack? # Drive type "Attack" none

od_gain = [KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::ATTACK], 1].max
if attacker.action.kind == 1
rate = attacker.action.skill.od_gain_rate # Rate of the skill is applied.
od_gain = od_gain * rate / 100
end
attacker.overdrive += od_gain
# Added by Mr. Anonymous 4/9/08
# if attacker's overdrive = gauge_max
if attacker.overdrive == max_overdrive && odmax_sound_played? == false
odmax_sound.play
def odmax_sound_played?
return true
end
end
end
#--------------------------------------------------------------------------
# ○ Increase Defender's Overdrive
# attacker : Attacker
#--------------------------------------------------------------------------
def increase_defender_overdrive(attacker)
return unless self.drive_damage? # No Drive Type "Damage"

rate = KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::DAMAGE]
od_gain = hp_damage * rate / maxhp
od_gain += mp_damage * rate / maxmp if maxmp > 0
self.overdrive += [od_gain, 1].max
# Added by Mr. Anonymous 4/9/08
# if actor recieves damage leading to overdrive = gauge_max
if self.overdrive == max_overdrive && odmax_sound_played? == false
odmax_sound.play
def odmax_sound_played?
return true
end
end
end
#--------------------------------------------------------------------------
# ● Skill Effects
# user : User
# skill : Skill
#--------------------------------------------------------------------------
alias skill_effect_KGC_OverDrive skill_effect
def skill_effect(user, skill)
skill_effect_KGC_OverDrive(user, skill)

# If imported KGC_ReproduceFunctions & item used has execute skill tag...
if $imported["ReproduceFunctions"] && $game_temp.exec_skill_on_item
return
end
end
end

#==============================================================================
# ■ Game_Actor
#==============================================================================

class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ● セットアップ
# actor_id : アクター ID
#--------------------------------------------------------------------------
alias setup_KGC_OverDrive setup
def setup(actor_id)
setup_KGC_OverDrive(actor_id)

@overdrive = 0
@drive_type = nil
end
#--------------------------------------------------------------------------
# ○ OverDrive タイプの取得
#--------------------------------------------------------------------------
def drive_type
unless @drive_type.is_a?(Array)
return KGC::OverDrive::DEFAULT_ACTOR_DRIVE_TYPE
end
return @drive_type
end
#--------------------------------------------------------------------------
# ○ OverDrive スキル習得済み判定
#--------------------------------------------------------------------------
def overdrive_skill_learned?
result = false
# 一時的に戦闘中フラグを解除
last_in_battle = $game_temp.in_battle
$game_temp.in_battle = false

self.skills.each { |skill|
if skill.overdrive?
result = true
break
end
}
$game_temp.in_battle = last_in_battle
return result
end
#--------------------------------------------------------------------------
# ○ ゲージ増加可否判定
#--------------------------------------------------------------------------
def can_gain_overdrive?
if KGC::OverDrive::NOT_GAIN_GAUGE_HIDING
# 非表示
return false if KGC::OverDrive::HIDE_GAUGE_ACTOR.include?(self.id)
end
if KGC::OverDrive::HIDE_GAUGE_NO_OD_SKILLS
# 未修得
return false unless overdrive_skill_learned?
end

return true
end
#--------------------------------------------------------------------------
# ○ ゲージ表示判定
#--------------------------------------------------------------------------
def od_gauge_visible?
# 戦闘中非表示
if KGC::OverDrive::HIDE_GAUGE_NOT_IN_BATTLE && !$game_temp.in_battle
return false
end
# 非表示
return false if KGC::OverDrive::HIDE_GAUGE_ACTOR.include?(self.id)
# ゲージ増加不可
return false unless can_gain_overdrive?

return true
end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Game_Enemy
#==============================================================================

class Game_Enemy < Game_Battler
#--------------------------------------------------------------------------
# ● オブジェクト初期化
# index : 敵グループ内インデックス
# enemy_id : 敵キャラ ID
#--------------------------------------------------------------------------
alias initialize_KGC_OverDrive initialize
def initialize(index, enemy_id)
initialize_KGC_OverDrive(index, enemy_id)

@overdrive = 0
@drive_type = nil
end
#--------------------------------------------------------------------------
# ○ OverDrive タイプの取得
#--------------------------------------------------------------------------
def drive_type
unless @drive_type.is_a?(Array)
return KGC::OverDrive::DEFAULT_ENEMY_DRIVE_TYPE
end
return @drive_type
end
end

#==============================================================================
# ■ Window_Base
#==============================================================================

class Window_Base < Window
#--------------------------------------------------------------------------
# ○ ドライブゲージの通常時の色 1 の取得
#--------------------------------------------------------------------------
def od_gauge_normal_color1
color = KGC::OverDrive::GAUGE_NORMAL_START_COLOR
return (color.is_a?(Integer) ? text_color(color) : color)
end
#--------------------------------------------------------------------------
# ○ ドライブゲージの通常時の色 2 の取得
#--------------------------------------------------------------------------
def od_gauge_normal_color2
color = KGC::OverDrive::GAUGE_NORMAL_END_COLOR
return (color.is_a?(Integer) ? text_color(color) : color)
end
#--------------------------------------------------------------------------
# ○ ドライブゲージの最大時の色 1 の取得
#--------------------------------------------------------------------------
def od_gauge_max_color1
color = KGC::OverDrive::GAUGE_MAX_START_COLOR
return (color.is_a?(Integer) ? text_color(color) : color)
end
#--------------------------------------------------------------------------
# ○ ドライブゲージの最大時の色 2 の取得
#--------------------------------------------------------------------------
def od_gauge_max_color2
color = KGC::OverDrive::GAUGE_MAX_END_COLOR
return (color.is_a?(Integer) ? text_color(color) : color)
end
#--------------------------------------------------------------------------
# ● 名前の描画
# actor : アクター
# x : 描画先 X 座標
# y : 描画先 Y 座標
#--------------------------------------------------------------------------
alias draw_actor_name_KGC_OverDrive draw_actor_name
def draw_actor_name(actor, x, y)
draw_actor_od_gauge(actor, x, y, 108)

draw_actor_name_KGC_OverDrive(actor, x, y)
end
Sianobel
Sianobel
Membre

Nombre de messages : 25
Age : 32
Localisation : Bruxelles
Distinction : aucune
Date d'inscription : 24/06/2008
http://perhiliel.evoconcept.net/

Overdrive Empty Re: Overdrive

le Lun 18 Aoû 2008 - 14:11
Spoiler:
Code:
#--------------------------------------------------------------------------
# ○ ドライブゲージの描画
# actor : アクター
# x : 描画先 X 座標
# y : 描画先 Y 座標
# width : 幅
#--------------------------------------------------------------------------
def draw_actor_od_gauge(actor, x, y, width = 120)
return unless actor.od_gauge_visible?

gw = width * actor.overdrive / actor.max_overdrive
gc1 = (gw == width ? od_gauge_max_color1 : od_gauge_normal_color1)
gc2 = (gw == width ? od_gauge_max_color2 : od_gauge_normal_color2)
self.contents.fill_rect(x, y + WLH - 8, width, 6, gauge_back_color)
self.contents.gradient_fill_rect(x, y + WLH - 8, gw, 6, gc1, gc2)
end
end

#==============================================================================
# ■ Window_Skill
#==============================================================================

if KGC::OverDrive::HIDE_SKILL_LACK_OF_GAUGE

class Window_Skill < Window_Selectable
#--------------------------------------------------------------------------
# ○ スキルをリストに含めるかどうか
# skill : スキル
#--------------------------------------------------------------------------
unless $@
alias include_KGC_OverDrive? include? if method_defined?(:include?)
end
def include?(skill)
return false if skill == nil

if defined?(include_KGC_OverDrive?)
return false unless include_KGC_OverDrive?(skill)
end

return false unless skill.overdrive?

return (@actor.calc_od_cost(skill) <= @actor.overdrive)
end

if method_defined?(:include_KGC_OverDrive?)
#--------------------------------------------------------------------------
# ● リフレッシュ
#--------------------------------------------------------------------------
def refresh
@data = []
for skill in @actor.skills
next unless include?(skill)
@data.push(skill)
if skill.id == @actor.last_skill_id
self.index = @data.size - 1
end
end
@item_max = @data.size
create_contents
for i in 0...@item_max
draw_item(i)
end
end
end

end # <-- class
end # <-- if KGC::OverDrive::HIDE_SKILL_LACK_OF_GAUGE

#==============================================================================
# ■ Scene_Skill
#==============================================================================

class Scene_Skill < Scene_Base
#--------------------------------------------------------------------------
# ● Use Skill(The effects of use other than the ally object are applied.)
#--------------------------------------------------------------------------
alias use_skill_nontarget_KGC_OverDrive use_skill_nontarget
def use_skill_nontarget
consume_od_gauge

use_skill_nontarget_KGC_OverDrive
end
#--------------------------------------------------------------------------
# ○ Consume Drive gauge when skill is used
#--------------------------------------------------------------------------
def consume_od_gauge
@actor.overdrive -= @actor.calc_od_cost(@skill)
end
end

#==============================================================================
# ■ Scene_Battle
#==============================================================================

class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# ● 戦闘終了
# result : 結果 (0:勝利 1:逃走 2:敗北)
#--------------------------------------------------------------------------
alias battle_end_KGC_OverDrive battle_end
def battle_end(result)
increase_overdrive_on_battle_end(result)

battle_end_KGC_OverDrive(result)
end
#--------------------------------------------------------------------------
# ○ 戦闘終了時のドライブゲージ増加処理
# result : 結果 (0:Victory 1:Escape 2:Defeat)
#--------------------------------------------------------------------------
def increase_overdrive_on_battle_end(result)
case result
when 0 # 勝利
od_gain = KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::VICTORY]
$game_party.existing_members.each { |actor|
actor.overdrive += od_gain if actor.drive_victory?
}
when 1 # 逃走
od_gain = KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::ESCAPE]
$game_party.existing_members.each { |actor|
actor.overdrive += od_gain if actor.drive_escape?
}
end
end
#--------------------------------------------------------------------------
# ● 戦闘行動の実行
#--------------------------------------------------------------------------
alias execute_action_KGC_OverDrive execute_action
def execute_action
increase_overdrive_on_action

execute_action_KGC_OverDrive
end
#--------------------------------------------------------------------------
# ○ Increase Gauge on Action
#--------------------------------------------------------------------------
def increase_overdrive_on_action
battler = @active_battler
od_gain = 0
unit = (battler.actor? ? $game_party : $game_troop)

# Alone
if battler.drive_alone? && unit.existing_members.size == 1
od_gain += KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::ALONE]
end
# Action
if battler.drive_action?
od_gain += KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::ACTION]
end
# Fatal
if battler.drive_fatal? && battler.hp < battler.maxhp / 4
od_gain += KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::FATAL]
end
# Guard
if battler.drive_guard?
od_gain += KGC::OverDrive::GAIN_RATE[KGC::OverDrive::Type::GUARD]
end
battler.overdrive += od_gain
end
#--------------------------------------------------------------------------
# ● Execution of battle action: Skill
#--------------------------------------------------------------------------
alias execute_action_skill_KGC_OverDrive execute_action_skill
def execute_action_skill
execute_action_skill_KGC_OverDrive

consume_od_gauge
end
#--------------------------------------------------------------------------
# ○ Drive gauge consumption when skill is used
#--------------------------------------------------------------------------
def consume_od_gauge
skill = @active_battler.action.skill
@active_battler.overdrive -= @active_battler.calc_od_cost(skill)
end
end

#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
#_/ The original untranslated version of this script can be found here:
# http://f44.aaa.livedoor.jp/~ytomy/tkool/rp...tech=over_drive
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
Hamaar
Hamaar
Membre

Nombre de messages : 183
Age : 25
Localisation : Les fesses calées dans mon fauteuil
Distinction : aucune
Date d'inscription : 25/02/2008

Overdrive Empty Re: Overdrive

le Lun 1 Sep 2008 - 11:49
l'auteur du script qu'a posté coco est KGC Softwares sinon c'est un très bon script apportant de la dynamique à un combat

de plus il manque un fichier "od_gauge.png" pour faire fonctionner le script si tu nous pouvais nous le joindre dans ton post
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6577
Age : 26
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

Overdrive Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
https://www.rpgmakervx-fr.com

Overdrive Empty Re: Overdrive

le Lun 1 Sep 2008 - 12:11
Ah oui désolé Hamaar, je l'avais oublié! ^^'
Je l'ai rajouté dans mon 2e post

Sianobel>>Peux-tu mettre le script en spoiler s'il te plait?
Masouf
Masouf
Membre

Nombre de messages : 284
Age : 25
Localisation : Rennes
Distinction : aucune
Date d'inscription : 24/12/2008

Overdrive Empty Re: Overdrive

le Sam 7 Mar 2009 - 19:34
Bonjour,
Je voudrai savoir si quelqu'un pourait réparer le script que coco-drift a poster, car l'autre est en anglais, dur a comprendre et ne s'utilise pas de la meme façon.
Merci pour votre aide!
Anonymous
Invité
Invité

Overdrive Empty Re: Overdrive

le Jeu 12 Mar 2009 - 20:38
Hé ho ! Regarde un peu les dates ! Tu as fais un super nécropost !
6 mois, tu te rends compte ? Là, vraiment, je ne pense pas que ce n'est pas un nécropost...
Fais attention les prochaines fois Wink

Rotsak

Par contre, pour la correction du script, ne me demande pas, je comprend rien au langage ruby =D


EDIT pour Berka : Ok, j'y penserai Wink


Dernière édition par Rotsak le Jeu 12 Mar 2009 - 21:09, édité 1 fois
Berka
Berka
Administrateur

Nombre de messages : 1832
Age : 29
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Overdrive Empty Re: Overdrive

le Jeu 12 Mar 2009 - 21:02
pour ce que tu as a dire, tu n'as pas besoin non plus de remonter le topic de 5 jours... les modos sont là pour veiller Wink

Le script marche, pas besoin de réparation...
berka
Masouf
Masouf
Membre

Nombre de messages : 284
Age : 25
Localisation : Rennes
Distinction : aucune
Date d'inscription : 24/12/2008

Overdrive Empty Re: Overdrive

le Ven 13 Mar 2009 - 0:41
Arf la 2e fois décidement je vais prendre plus mon temps pour verifier les dates.
Et merci pour l'information!
Hikari
Hikari
Membre

Nombre de messages : 23
Age : 24
Localisation : Mareil-Marly
Distinction : aucune
Date d'inscription : 21/10/2009

Overdrive Empty Re: Overdrive

le Jeu 5 Nov 2009 - 19:23
Bonjour, on va peut être me dire que je fait nécropost mais je ne savait pas ou poster ma demande, j'ai une érreur à la ligne 64 : Script "Overdrive" line 64: NameError occured. Uninitialized constant RPG::Cache
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum