Its interesting that there is so much code that they left open and available to the public to dawdle with, but even more interesting that they hide a lot of it as well.
In regards to XP popping, I've seen scripts that modify the default battle system so that on defeat, enemies will spew forth their XP/GP amounts, etc. However, the XP/GP pop that I refer to was more aiming at the popping of the Blizz-ABS damage sprites.
I've found a couple important parts that I believe could play a role in what I seek:
This is within the module BlizzABS::Utility.
#--------------------------------------------------------------------------
# request_damage_sprite
# char - map character
# Requests a sprite for damage display.
#--------------------------------------------------------------------------
def request_damage_sprite(char, damage = nil)
# if map battler
if damage != nil
# get damage text colors and strings
colors, damages = self.get_damage_data(damage)
else
# get damage text colors and strings
colors, damages = self.get_damage_data(char.battler)
end
# for each existing color
colors.each_index {|i|
# create one damage sprite request
$BlizzABS.cache.damages.push(DamageRequest.new(char, damages[i],
colors[i], char.battler.critical))}
end
and this lies within module BlizzABS::Processor.
#--------------------------------------------------------------------------
# remove_enemy
# enemy - the killed enemy event
# Processes the after-death period of enemies.
#--------------------------------------------------------------------------
def remove_enemy(enemy)
# stop except if enemy event code is to be executed or enemy is erased
return if enemy.execute || enemy.erased
# start event code if there is some
enemy.start if enemy.trigger == BlizzABS::CETDeath
# remove except if code needs to be executed
$game_map.events.delete(enemy.id) unless enemy.execute
# get all dropped items on the map
items = drop_items(enemy)
# experience result
exp_result(enemy)
# gold result
gold = gold_result(enemy)
# if not using drop gold mode
if BlizzABS::Config::DROP_GOLD == ''
# just increase gold
$game_party.gain_gold(gold)
# if dropping any gold
elsif gold > 0
# add gold to items
items = [gold] + items
end
# execute all additional enemy results
additional_result(enemy)
# if using corpses
if BlizzABS::Config::CORPSES
# if using empty corpses or any drop exists
if BlizzABS::Config::EMPTY_CORPSES || items.size > 0
# create a corpse dropped items
drop_event(items, enemy.real_x, enemy.real_y, enemy)
end
else
# create all necessary dropped items
items.each {|item| drop_event([item], enemy.real_x, enemy.real_y)}
end
end
But for the life of me I cannot put the two together(or more if required), and its kind of frustrating.