deadcell Trouvère Follet
Nombre de messages : 625 Age : 35 Niveau Rpg Maker : Excellent Niveau Jeux Préférés : Final Fantasy, Resident evil... Date d'inscription : 21/03/2007
| Sujet: Répartir l'expérience dans l'équipe Mar 08 Jan 2008, 13:01 | |
| Script: Répartir l'expérience dans l'équipe Fonction: Comme dans FF IX, répartie également l'EXP entre vos personnages Auteur: Slipknot Screen: Aucun Créer un Script au dessus de " Main" et nommez-le " Battle_End_Options" et collez le script ci-dessous: - Code:
-
#============================================================ # After Battle Changes #------------------------------------------------------------------------------ # by Slipknot #============================================================
module Battle_End_Options #-------------------------------------------------------------------------- # Split experience received? #-------------------------------------------------------------------------- Split_Exp = true #-------------------------------------------------------------------------- # Full recover when actor increase level? #-------------------------------------------------------------------------- Level_Up_Recover = true #-------------------------------------------------------------------------- # End wait time, in frames #-------------------------------------------------------------------------- End_Frames = 80 end
class Scene_Battle #-------------------------------------------------------------------------- include Battle_End_Options #-------------------------------------------------------------------------- def start_phase5 @phase = 5 $game_system.me_play($game_system.battle_end_me) $game_system.bgm_play($game_temp.map_bgm) exp = gold = 0 treasures = [] for enemy in $game_troop.enemies unless enemy.hidden exp += enemy.exp gold += enemy.gold if rand(100) < enemy.treasure_prob if enemy.item_id > 0 treasures.push($data_items[enemy.item_id]) end if enemy.weapon_id > 0 treasures.push($data_weapons[enemy.weapon_id]) end if enemy.armor_id > 0 treasures.push($data_armors[enemy.armor_id]) end end end end treasures = treasures[0..5] psize = $game_party.actors.size-1 if Split_Exp can_get = 0 0.upto(psize) do can_get += 1 end exp = (exp /= can_get).ceil if can_get > 0 end for i in 0..psize actor = $game_party.actors[i] unless actor.cant_get_exp? last_level = actor.level actor.exp += exp if actor.level > last_level @status_window.level_up(i) if Level_Up_Recover actor.hp = actor.maxhp actor.sp = actor.maxsp end end end end $game_party.gain_gold(gold) for item in treasures case item when RPG::Item $game_party.gain_item(item.id, 1) when RPG::Weapon $game_party.gain_weapon(item.id, 1) when RPG::Armor $game_party.gain_armor(item.id, 1) end end @result_window = Window_BattleResult.new(exp, gold, treasures) @phase5_wait_count = End_Frames end end Démo disponible ici | |
|