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
517 기타 Kylock 밤낮 스크립트 부분 한글화 + 달력 모드 (모드는 자작) 31 file RMdude 2009.02.15 4100
516 기타 Kylock1.2+(RMDude-Kylock1.5) Time System Script 4 file communnn 2011.10.20 2595
515 스킬 Learn Skills By Use 10 비극ㆍ 2010.04.19 2037
» LevelMe v1.2 3 Man... 2008.10.27 1154
513 Limit Break VX 3 Man... 2008.10.28 1777
512 기타 Lock Screen 3 비극ㆍ 2010.04.19 2012
511 맵/타일 Map Saver 17 file 비극ㆍ 2010.04.18 2415
510 미니맵 Map-System by AmIMeYet [미니맵] 9 Man... 2008.10.28 2746
509 변수/스위치 MapSwitch VX Version: 1.1 1 Man... 2008.10.27 1327
508 MAX Level Limitation System 3 Man... 2008.10.28 1198
507 Menu Background Effects(온라인 스크립트 올릴려고 했다가 못 올렸음)아깝다.. Man... 2008.10.28 1665
506 메시지 MessageSound v2.0 글자에 소리 다다닥 스크립트 21 할렘 2009.02.02 3510
505 미니맵 MiniMap 1.0 미니맵 스크립트. 39 아방스 2010.12.02 4740
504 기타 Modified Advanced Weather Script VX 1.1 3 file Alkaid 2010.10.08 1967
503 상태/속성 MOG - Menu Status V 2.0 16 아방스 2011.01.01 3316
502 메뉴 MOG - Scroll Bar for VX file 습작 2014.07.06 1115
501 MOG 스토리 씬 22 file RPGbooster 2008.10.08 3345
500 이름입력 MOG 이름바꾸기 11 file RPGbooster 2008.10.08 3285
499 More SaveFlies(대박) 2 Man... 2008.10.28 2125
498 기타 MSX - XP Characters on VX/VX Ace 2 Alkaid 2013.01.26 1346
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