XP 스크립트

http://www.dubealex.com/asylum/index.php?showtopic=6512
  이 스크립트에서 전투후 주어지는 경험치는 (적 파티 경험치)/(파티의 캐릭터 수)입니다.  즉, 경험치가 20인 몬스터를 2명이서 잡으면 한 사람당 돌아오는 경험치는 10이 됩니다.


#=============================================================
# • After Battle Changes
#------------------------------------------------------------------------------
# Slipknot
# 1.1
# 15/02/06
#------------------------------------------------------------------------------
=begin
  Version 1.1
  - Fixed experience split.
  - In the result window, now appear the total experience.
=end
#=============================================================

module Battle_End_Options
  #--------------------------------------------------------------------------
  # • Split experience received?
  #--------------------------------------------------------------------------
  Split_Exp = false
  #--------------------------------------------------------------------------
  # • Full recover when actor increase level?
  #--------------------------------------------------------------------------
  Level_Up_Recover = true
  #--------------------------------------------------------------------------
  # • Phase 5 wait time
  #--------------------------------------------------------------------------
  End_Frames = 70
  #--------------------------------------------------------------------------
end

#------------------------------------------------------------------------------
# Begin Scene_Battle Edit
#------------------------------------------------------------------------------
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 = old_exp = 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
    old_exp = exp
    if Split_Exp
      can_get = 0
      0.upto(psize) do |x|
        actor = $game_party.actors[x]
        next if actor.cant_get_exp?
        can_get += 1
      end
      exp = (old_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(old_exp, gold, treasures)
    @phase5_wait_count = End_Frames
  end
end
#------------------------------------------------------------------------------
# End Scene_Battle Edit
#------------------------------------------------------------------------------

#------------------------------------------------------------------------------
# Begin Game_Actor Edit
#------------------------------------------------------------------------------
class Game_Actor < Game_Battler
  #--------------------------------------------------------------------------
  def final_level?
    return @level >= $data_actors[@actor_id].final_level
  end
  #--------------------------------------------------------------------------
  def cant_get_exp?
    return true if final_level?
    super
  end
end
#------------------------------------------------------------------------------
# End Game_Actor Edit
#------------------------------------------------------------------------------

Who's 백호

?

이상혁입니다.

http://elab.kr

Comment '15'

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6203
701 전투 KGC_AutoRecover(매턴 자동 회복) 1 백호 2009.02.22 1431
700 전투 KGC_BattlerEffect(버틀러 효과) 2 file 백호 2009.02.22 1959
699 스킬 KGC_CrashSkill(자폭스킬) 4 file 백호 2009.02.22 2030
698 전투 RTAB/CRB 단축키 1.0.0ver 3 file 백호 2009.02.22 2527
697 스킬 [RTAB] 스킬영창시간 7 file 백호 2009.02.22 2875
696 전투 RTAB 1.16ver 12 file 백호 2009.02.22 3962
695 장비 KGC_EquipmentBreak(장비품 파괴) 1 백호 2009.02.22 1356
694 전투 KGC_FusionEnemy(에너미 융합) 1 백호 2009.02.22 1660
693 전투 KGC_GuardRecover(방어시 HP회복) 4 백호 2009.02.22 1348
692 스킬 KGC_HideNameSkill(명칭 비표시 스킬) 백호 2009.02.22 1124
691 저장 오류 수정한 자동세이브 2 백호 2009.02.22 1403
690 스킬 ABP액알 v1.2 스킬추가, 버그수정판 36 file 백호 2009.02.22 6920
689 저장 렉없는 자동세이브 스크립트 2 백호 2009.02.22 1591
688 타이틀/게임오버 죽엇을경우 마을로이동하기 스크립트 16 file 백호 2009.02.22 3326
687 타이틀/게임오버 타이틀 화면 메뉴 변경 24 file 백호 2009.02.22 5586
686 이동 및 탈것 그래픽 변경 데쉬 3 file 백호 2009.02.22 2502
685 이동 및 탈것 이벤트가 이벤트를 따라가는것 8 백호 2009.02.22 1872
684 전투 ABP 액알 (Action Battle Player) 14 file 백호 2009.02.22 4560
683 전투 KGC_OverDrive(오버 드라이브) 3 file 백호 2009.02.22 2551
682 전투 KGC_PreempAttack(선제공격) file 백호 2009.02.22 1406
Board Pagination Prev 1 ... 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ... 52 Next
/ 52