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 HUD 맵 이름 스크립트 21 file 개임맨 2010.10.03 4365
516 제작도구 Window Maker by Jet 12 Alkaid 2010.09.26 2438
515 장비 KGC 확장 장비 화면 2009/02/15 13 시트르산 2010.09.25 3113
514 퀘스트 [패치]오메가 퀘스트 시스템 확장판 v.1.1 72 file 레오 2010.09.25 5474
513 메뉴 kgc 파라미터 배분 09/07/25 13 시트르산 2010.09.24 2327
512 전투 sbs battler configuration 한글 번역 13 file 시트르산 2010.09.23 4475
511 장비 장비의 착용조건 설정 v1.0 27 file 까까까 2010.09.20 3740
510 기타 OriginalWij's Script Compilation 1.2 2 Alkaid 2010.09.20 1583
509 맵/타일 Tileset Reader VX 2.1 by DerVVulfman 4 Alkaid 2010.09.20 2376
508 장비 장비에 레벨제한 스크립트!! 21 ijsh515 2010.09.19 3040
507 기타 ActivateEvents 8 file EuclidE 2010.09.18 1692
506 기타 Wora's Christmas Giftbox 2008 4 file Alkaid 2010.09.18 1747
505 제작도구 Windowskin generator VX by Aindra and Woratana 1 file Alkaid 2010.09.18 1791
504 기타 집안의 가구를 내마음대로 데코레이션하기 15 file EuclidE 2010.09.18 4303
503 장비 Equipment Constraints 2.5b by Modern Algebra 3 Alkaid 2010.09.17 2001
502 기타 Drop Options 1.1 by Modern Algebra 4 Alkaid 2010.09.16 1509
501 기타 ひきも記 RMVX 샘플 프로젝트 9 file Alkaid 2010.09.15 2338
500 상태/속성 Stat Distribution System 1.71 by Lettuce 7 file Alkaid 2010.09.14 2339
499 기타 みんと씨의 RMVX 샘플 프로젝트 1.11 (2009-11-05) 6 Alkaid 2010.09.13 2005
498 파티 Party Changer 3.9 by Dargor 5 file Alkaid 2010.09.12 2364
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