Zarok RPG Maker
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.



 
AccueilDernières imagesS'enregistrerConnexion
Le Deal du moment :
Code promo Nike : -25% dès 50€ ...
Voir le deal

Partagez | 
 

 [Script] Optimisation de l'équipement

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
dark falco
Atome
Atome


Masculin Messages : 32
Age : 29
Date d'inscription : 06/05/2007

Caractéristiques du membre
Evolution: Atome
Job: Events
XP:
[Script] Optimisation de l'équipement Left_bar_bleue20/20[Script] Optimisation de l'équipement Empty_bar_bleue  (20/20)

[Script] Optimisation de l'équipement Empty
MessageSujet: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyLun 21 Mai 2007 - 15:03

Grâce à ces petits scripts, on va pouvoir faire en sorte que quand l'on appuie sur le bouton X, l'équipement dans le slot selectionné soit optimisé et que quand on appuie sur Y, tout l'équipement sera optimisé. Pour ceux qui n'ont jamais joué aux anciens FF (Oh Mon Dieu lol) Optimiser ici signifie remplacer l'équipement actuel par le meilleur, c'est le personnage qui s'équipe immédiatement des meilleurs équipements. C'est configurable.

Bon alors, au début de Scene_Equip, ligne 8 si je ne m'abuse apres "class Scene_Equip" rajoutez ceci :

Code:
 
# -------------------------
WEAPON_ATK_WEIGHT = 1.0
WEAPON_PDF_WEIGHT = 0.0
WEAPON_MDF_WEIGHT = 0.0
WEAPON_STR_WEIGHT = 0.0
WEAPON_DEX_WEIGHT = 0.0
WEAPON_AGI_WEIGHT = 0.0
WEAPON_INT_WEIGHT = 0.0
ARMOR_EVA_WEIGHT = 0.0
ARMOR_PDF_WEIGHT = 0.75
ARMOR_MDF_WEIGHT = 0.25
ARMOR_STR_WEIGHT = 0.0
ARMOR_DEX_WEIGHT = 0.0
ARMOR_AGI_WEIGHT = 0.0
ARMOR_INT_WEIGHT = 0.0
NO_ACCESSORY_OPTIMIZATION = false

Si vous voulez que les accessoires ne soient pas les sujets d'optimisation remplacer false par true dans la derniere ligne de code si dessus.

ligne 256 la ou y'a "def update_right", et remplacez tout ce code jusqu'à la ligne 303 "end" par ce code ci :

Code:

def update_right
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Menu.new(2)
return
end
if Input.trigger?(Input::C)
if @actor.equip_fix?(@right_window.index)
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
@right_window.active = false
@item_window.active = true
@item_window.index = 0
return
end
if Input.trigger?(Input::X)
$game_system.se_play($data_system.decision_se)
optimize(@right_window.index)
@left_window.refresh
@right_window.refresh
@item_window1.refresh
@item_window2.refresh
@item_window3.refresh
@item_window4.refresh
@item_window5.refresh
return
end
if Input.trigger?(Input::Y)
$game_system.se_play($data_system.decision_se)
optimize(0)

optimize(1)
optimize(2)
optimize(3)
optimize(4)
@left_window.refresh
@right_window.refresh
@item_window1.refresh
@item_window2.refresh
@item_window3.refresh
@item_window4.refresh
@item_window5.refresh
return
end
if Input.trigger?(Input::R)
$game_system.se_play($data_system.cursor_se)
@actor_index += 1
@actor_index %= $game_party.actors.size
$scene = Scene_Equip.new(@actor_index, @right_window.index)
return
end
if Input.trigger?(Input::L)
$game_system.se_play($data_system.cursor_se)
@actor_index += $game_party.actors.size - 1

@actor_index %= $game_party.actors.size
$scene = Scene_Equip.new(@actor_index, @right_window.index)
return
end
end

Juste apres le script précédent, ou n'importe ou apres la fin d'un "def", rajoutez le code suivant :

Code:
 
def optimize(slot)
if slot == 0
object = $data_weapons[@actor.weapon_id]
optimal = object.id
current = 0.00
if @actor.weapon_id != 0
current += object.atk * WEAPON_ATK_WEIGHT
current += object.pdef * WEAPON_PDF_WEIGHT
current += object.mdef * WEAPON_MDF_WEIGHT
current += object.str_plus * WEAPON_STR_WEIGHT
current += object.dex_plus * WEAPON_DEX_WEIGHT
current += object.agi_plus * WEAPON_AGI_WEIGHT
current += object.int_plus * WEAPON_INT_WEIGHT
else
optimal = 0
end
max_eval = current
@actor.equip(0, 0)
flag = false
zero_flag = true
for weapon in $data_weapons
if !flag
flag = true
next
end
evaluation = 0.00
evaluation += weapon.atk * WEAPON_ATK_WEIGHT
evaluation += weapon.pdef * WEAPON_PDF_WEIGHT
evaluation += weapon.mdef * WEAPON_MDF_WEIGHT
evaluation += weapon.str_plus * WEAPON_STR_WEIGHT
evaluation += weapon.dex_plus * WEAPON_DEX_WEIGHT
evaluation += weapon.agi_plus * WEAPON_AGI_WEIGHT
evaluation += weapon.int_plus * WEAPON_INT_WEIGHT
if evaluation > 0
zero_flag = false
end
if @actor.equippable?(weapon) &&
$game_party.weapon_number(weapon.id) > 0 && evaluation > max_eval
max_eval = evaluation
optimal = weapon.id
end
end
if zero_flag
optimal = 0
end
@actor.equip(0, optimal)
#------------------------UNIQUEMENT SI VOUS AVEZ LE SCRIPT "Epée à deux mains"
TWO_HANDED_WEAPON
if $game_system.two_handed_weapons.include?(optimal)
@actor.equip(1, 0)
end
#------------------------FIN
end
if slot >= 1
not_equipped = false
case slot
when 1
#------------------------UNIQUEMENT SI VOUS AVEZ LE SCRIPT "Epée à deux mains"
TWO_HANDED_WEAPON
if $game_system.two_handed_weapons.include?(@actor.weapon_id)
return
end
#------------------------FIN
if @actor.armor1_id == 0
not_equipped = true
else
object = $data_armors[@actor.armor1_id]
end
when 2
if @actor.armor2_id == 0
not_equipped = true
else
object = $data_armors[@actor.armor2_id]
end
when 3
if @actor.armor3_id == 0
not_equipped = true
else
object = $data_armors[@actor.armor3_id]
end
when 4
if NO_ACCESSORY_OPTIMIZATION
return
end
if @actor.armor4_id == 0
not_equipped = true
else
object = $data_armors[@actor.armor4_id]
end
end
optimal = object.id
current = 0.00
if not_equipped = false
current += object.eva * ARMOR_EVA_WEIGHT
current += object.pdef * ARMOR_PDF_WEIGHT
current += object.mdef * ARMOR_MDF_WEIGHT
current += object.str_plus * ARMOR_STR_WEIGHT
current += object.dex_plus * ARMOR_DEX_WEIGHT
current += object.agi_plus * ARMOR_AGI_WEIGHT
current += object.int_plus * ARMOR_INT_WEIGHT
else
optimal = 0
end
max_eval = current
@actor.equip(slot, 0)
flag = false
zero_flag = true
for armor in $data_armors
if !flag
flag = true
next
end
if armor.kind != slot-1
next
end
evaluation = 0.00
evaluation += armor.eva * ARMOR_EVA_WEIGHT
evaluation += armor.pdef * ARMOR_PDF_WEIGHT
evaluation += armor.mdef * ARMOR_MDF_WEIGHT
evaluation += armor.str_plus * ARMOR_STR_WEIGHT
evaluation += armor.dex_plus * ARMOR_DEX_WEIGHT
evaluation += armor.agi_plus * ARMOR_AGI_WEIGHT
evaluation += armor.int_plus * ARMOR_INT_WEIGHT
if evaluation > 0
zero_flag = false
end
if @actor.equippable?(armor) &&
$game_party.armor_number(armor.id) > 0 && evaluation > max_eval
max_eval = evaluation
optimal = armor.id
end
end
if zero_flag
optimal = 0
end
@actor.equip(slot, optimal)
end
end


Attention s'il vous plait, si vous n'avez pas le script "Epée à deux mains" Supprimez les codes concernés dans le script ci-dessus. Bonne optimisation des équipements.
PS : Je ne l'ai pas testé...


Dernière édition par le Mar 22 Mai 2007 - 15:21, édité 1 fois
Revenir en haut Aller en bas
http://kingdommaker.actionboard.net
Glacyus
Atome
Atome
Glacyus


Masculin Messages : 8
Age : 31
Date d'inscription : 13/04/2007

Caractéristiques du membre
Evolution: Atome
Job:
XP:
[Script] Optimisation de l'équipement Left_bar_bleue20/20[Script] Optimisation de l'équipement Empty_bar_bleue  (20/20)

[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyLun 21 Mai 2007 - 17:47

Je te conseil d'étudier plus en détails le script car si tu le lis en entier tu verras qu'il est composé de plusieur script et de plusieurs variantes (il me semble^^)


Code:


...

[u]Juste apres le script précédent, ou n'importe ou apres la fin d'un "def", rajoutez le code suivant :[/u]

def optimize(slot)
if slot == 0
object = $data_weapons[@actor.weapon_id]
optimal = object.id
current = 0.00
if @actor.weapon_id != 0
current += object.atk * WEAPON_ATK_WEIGHT
current += object.pdef * WEAPON_PDF_WEIGHT
current += object.mdef * WEAPON_MDF_WEIGHT
current += object.str_plus * WEAPON_STR_WEIGHT
current += object.dex_plus * WEAPON_DEX_WEIGHT
current += object.agi_plus * WEAPON_AGI_WEIGHT
current += object.int_plus * WEAPON_INT_WEIGHT
else
optimal = 0
end
max_eval = current
@actor.equip(0, 0)
flag = false
zero_flag = true
for weapon in $data_weapons
if !flag
flag = true
next
end
evaluation = 0.00
evaluation += weapon.atk * WEAPON_ATK_WEIGHT
evaluation += weapon.pdef * WEAPON_PDF_WEIGHT
evaluation += weapon.mdef * WEAPON_MDF_WEIGHT
evaluation += weapon.str_plus * WEAPON_STR_WEIGHT
evaluation += weapon.dex_plus * WEAPON_DEX_WEIGHT
evaluation += weapon.agi_plus * WEAPON_AGI_WEIGHT
evaluation += weapon.int_plus * WEAPON_INT_WEIGHT
if evaluation > 0
zero_flag = false
end
if @actor.equippable?(weapon) &&
$game_party.weapon_number(weapon.id) > 0 && evaluation > max_eval
max_eval = evaluation
optimal = weapon.id
end
end
if zero_flag
optimal = 0
end
@actor.equip(0, optimal)

Pour une meilleurs compréhension séparent les.
Revenir en haut Aller en bas
http://www.theworldofewilan.forum2jeux.com
dark falco
Atome
Atome


Masculin Messages : 32
Age : 29
Date d'inscription : 06/05/2007

Caractéristiques du membre
Evolution: Atome
Job: Events
XP:
[Script] Optimisation de l'équipement Left_bar_bleue20/20[Script] Optimisation de l'équipement Empty_bar_bleue  (20/20)

[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyMar 22 Mai 2007 - 15:20

mouais.... merci du conseil !!


Dernière édition par le Mar 22 Mai 2007 - 17:37, édité 1 fois
Revenir en haut Aller en bas
http://kingdommaker.actionboard.net
...:: Shiminou ::...
...:: Shiminou ::...


Masculin Messages : 867
Date d'inscription : 20/10/2006

[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyMar 22 Mai 2007 - 17:17

Ok , je ne l'ai pas tester mais merci pour ton script , il peut servir pour les moins flemmard Smile c'est gentil de l'avoir mis .

Dark Falco , si ta rien d'autre à dire que " mouais " , c'est que tu flood , donc fait gaffe.

Merci de votre compréhension

Cordialement : oO Shinmei Oo
Revenir en haut Aller en bas
Children
Molécule
Molécule
Children


Masculin Messages : 84
Age : 30
Loisirs : Rpg, making.
Date d'inscription : 30/12/2006

[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyMar 5 Juin 2007 - 18:19

Je vais le tester mais ça à l'air d'être bon script utile! pirat

---EDIT-----------------------------
Je viens de le tester, il marche super, très bon script! 10/10 Bien. . Il faut juste que je rajoute un petit icone indiquant que y signifie tout optimiser et x optimiser le slot sélectionner drunken :grand-shtroump


Dernière édition par le Mar 5 Juin 2007 - 18:53, édité 2 fois
Revenir en haut Aller en bas
http://webblabla.ifrance.com/index.htm
shitontheroad
Embryon
Embryon
shitontheroad


Masculin Messages : 1344
Age : 32
Loisirs : Chuchoter à l'oreille des langoustes.
Date d'inscription : 12/03/2007

Caractéristiques du membre
Evolution: Atome
Job:
XP:
[Script] Optimisation de l'équipement Left_bar_bleue20/20[Script] Optimisation de l'équipement Empty_bar_bleue  (20/20)

[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement EmptyMar 5 Juin 2007 - 18:49

Excuse-moi,Shimnei, mais tu ne veux pas dire "POur les PLUS flemmards"?
Et sinon je pense que je vais noter ce script quelque part, il pourait me servir dans un futur projet...
Revenir en haut Aller en bas
Contenu sponsorisé



[Script] Optimisation de l'équipement Empty
MessageSujet: Re: [Script] Optimisation de l'équipement   [Script] Optimisation de l'équipement Empty

Revenir en haut Aller en bas
 

[Script] Optimisation de l'équipement

Voir le sujet précédent Voir le sujet suivant Revenir en haut 

 Sujets similaires

-
» Script Scene-Bonus
» Script Temps et Lieux VX
» script
» Script menus à la ff7
» [Rpgxp] Script Atoria
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Zarok RPG Maker :: 

 :: SCRIPTS :: Script XP :: Scripts d'interfaces/ menus
-
Sauter vers: