VX 스크립트

에제:http://chthonic.150m.com/scratch/Queex_scripts.zip
여기서 부터...
###################
# LevelMe system #
####################################################################
# Version 1.2 #
# Author: Queex #
# Licence: Creative commons non-commercial attribution #
####################################################################
# Usage: #
# LevelActor(<actor_id>, <levels to add>, <show message?>) #
# LevelParty(<levels to add>, <show message?>) #
# NextLevelActor(<actor_id>, <show message?>) #
# NextLevelParty(<show message?>) #
# #
# Side effect: actors will have their experience stored as #
# a float value rather than an integer. If you don't want it to #
# be displayed as an integer, it's best to change any display #
# methods to add '.to_i.to_s' to the experience value. #
# #
# Version History: #
# 1.1 Fixed Release #
# 1.2 Updated to follow Ruby naming conventions. #
####################################################################

##############
# Game_Actor #
##############
class Game_Actor < Game_Battler
def level_to_level_exp(start_level)
if start_level==99
return 0 # this avoids breaking the array when at max level
else
return @exp_list[start_level+1]-@exp_list[start_level]
end
end
end

######################
# level_actor method #
#################################################################
# Levels the specified actor a certain number of levels. #
# Need not be a whole number of levels. It also guarantees that #
# awards are commutative- that is, awarding 1/2 a level then #
# awarding 1 gives the same result as awarding 1 then awarding #
# 1/2 a level. #
# The amount of experience actually awarded is returned. #
#################################################################
def level_actor(actor_id,lvls=1.0,show=true)
#set up variables
this_actor=$game_actors[actor_id]
exp_increase=0
levels_gained=0

#if the award is enough to reach the next level, this adds exp
#to reach that level and subtracts the proportion from the
# remaining award.
exp_to_next_level=this_actor.next_rest_exp_s.to_f
first_level_gap=this_actor.level_to_level_exp(this_actor.level)
if first_level_gap*lvls >= exp_to_next_level
exp_increase=exp_to_next_level
levels_gained=1
lvls -= exp_to_next_level/first_level_gap
end

#This adds whole levels until less than 1 level will be awarded
while lvls>=1.0
exp_increase+=this_actor.level_to_level_exp(this_actor.level+levels_gained)
levels_gained+=1
lvls-=1.0
end

#This adds any remaining fractional levels
if(lvls>0)
exp_increase+=this_actor.level_to_level_exp(this_actor.level+levels_gained)*lvls
end

#The award is made in one go.
$game_actors[actor_id].gain_exp(exp_increase,show)
return exp_increase
end

######################
# level_party method #
#############################################################
# Levels all actors currently in the party by the specified #
# number of levels. #
#############################################################
def level_party(lvls=1.0,show=true)
for actor in $game_party.members
LevelActor(actor.id,lvls,show)
end
end

###########################
# next_level_actor method #
#######################################################
# Gives the specified actor just enough exp to level. #
# The amount of experience awarded is returned. #
#######################################################
def next_level_actor(actor_id,show=true)
this_actor=$game_actors[actor_id]
exp_increase=this_actor.next_rest_exp_s.to_f
$game_actors[actor_id].gain_exp(exp_increase,show)
return exp_increase
end

###########################
# next_level_party method #
###############################################
# Gives the party just enough exp to level. #
###############################################
def next_level_party(show=true)
for actor in $game_party.members
NextLevelActor(actor.id,show)
end
end
Comment '3'
  • ?
    사람인간 2008.10.28 03:16
    ....적어도 무슨 내용의 스크립트인지 정도는 써 놓으시죠..
  • ?
    크라상 2009.01.14 19:26
    ㄴ저두 그렇게 생각.
    레벨에 관한거라 이런생각은 꼭 들것같은데....
    "레벨제한을 뚫는건가!!?"
    기대하며 왔는데 뭔지 모르겠어요..;;;
  • ?
    구제가능 2011.07.24 12:02

    뭐지 이게...........


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
477 HUD 아이콘 그리기 7 file 허걱 2009.08.20 4442
476 기타 아이디를 띄우기 20 12345678 2011.11.07 4627
475 HUD 아방스님이 올린 HUD를 개조했습니다. 7 file 스리아씨 2013.09.30 2684
474 HUD 심플한 맵 이름 띄우기 53 file RPGbooster 2008.10.08 6862
473 타이틀/게임오버 심플한 게임오버화면 28 file RPGbooster 2008.10.08 3328
472 심플하게 메뉴 띄우기 25 file RPGbooster 2008.10.08 3864
471 기타 심플 마우스 시스템 1.5 애드온 11 file RMdude 2009.02.11 4325
470 기타 시야범위 스크립트 18 file 좀비사냥꾼 2009.03.19 4047
469 기타 시야범위 스크립트 22 file 카르와푸딩의아틀리에 2009.06.30 4025
468 메뉴 시스템 옵션 스크립트의 사용방법 6 아방스 2009.06.04 2832
467 스텟포인트 배분하기 88 file RPGbooster 2008.10.08 6637
466 메뉴 스테이터스 화면 개조 - 커스텀 버전 13 file 훈덕 2009.06.15 4932
465 메뉴 스테이터스 창을 멋있게 쿨하게~!전신을 보여주자. 24 file 할렘 2009.02.06 6236
464 액터 스탯 시스탬 29 츠키아 2008.08.08 4214
463 메뉴 스타일 크로노 트리거 메뉴 31 file 콩밥 2010.07.19 4536
462 상점 스킬합성 상점 스크립트 23 file 미얼 2009.10.29 4498
461 스킬장착 시스템 17 file RPGbooster 2008.10.11 3585
460 장비 스킬습득장비 [죄송] 19 file RPGbooster 2008.10.11 4049
459 스킬분류 16 file RPGbooster 2008.10.11 2833
458 스킬 스킬북으로 스킬 레벨업!, 'SW_BookSkill' by SiotWarrior(재수정) 21 file 시옷전사 2011.05.15 2817
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 32 Next
/ 32