1 Dividir experiência igualmente Dom 21 Out 2012, 11:47
Tiaguu
Membro - semi experiente
Introdução
Este é um script que divide igualmente a experiência obtida através das batalhas. Por exemplo, normalmente, se um grupo de quatro personagens derrotar um "Fantasma" que dá 100 experiência, todos os membros do grupo obtêm 100 experiência. Com este script, se apenas um personagem derrotar um "Fantasma", ele vai obter 100 experiência. Já se um grupo de quatro personagens derrotar um "Fantasma", cada um vai obter 25 experiência. Além disso, quando um personagem aumentar de nível, você pode escolher curar todo o HP e MP ou não.
Screenshots
Não precisa.
Demo
Não precisa.
Script - Coloque acima do "Main"
Créditos
Slipknot
Tópico original
http://finalfantasyxi.forums-free.com/split-experience-after-battle-t16.html
Este é um script que divide igualmente a experiência obtida através das batalhas. Por exemplo, normalmente, se um grupo de quatro personagens derrotar um "Fantasma" que dá 100 experiência, todos os membros do grupo obtêm 100 experiência. Com este script, se apenas um personagem derrotar um "Fantasma", ele vai obter 100 experiência. Já se um grupo de quatro personagens derrotar um "Fantasma", cada um vai obter 25 experiência. Além disso, quando um personagem aumentar de nível, você pode escolher curar todo o HP e MP ou não.
Screenshots
Não precisa.
Demo
Não precisa.
Script - Coloque acima do "Main"
- Código:
#============================================================
# After Battle Changes
#------------------------------------------------------------------------------
# by Slipknot
#============================================================
module Battle_End_Options
#--------------------------------------------------------------------------
# Split experience received?
#--------------------------------------------------------------------------
Split_Exp = true
#--------------------------------------------------------------------------
# Full recover when actor increase level?
#--------------------------------------------------------------------------
Level_Up_Recover = false
#--------------------------------------------------------------------------
# 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
Créditos
Slipknot
Tópico original
http://finalfantasyxi.forums-free.com/split-experience-after-battle-t16.html