VX 스크립트

 Project1.exe


으헝헝.
최고의 스크립트라고 생각됩니다.
완벽하죠.
이 스크립트 효과는 보통의 RPG 처럼 스탯을 찍어 능력치를 성장시키는 것입니다.

사용법은
$scene = Scene_Stat_Dist.new(0)
이것을 (이벤트를 통해) 스크립트로 적용시킨후 이벤트와 접촉하면 됩니다.(물론 아래의 스크립트는 메인 위쪽에 삽입해주셔야겠지요.)
Crit 는 크리티컬공격을 할 퍼센트 또 뭐드라.. Hit 는 명중률.. 글고 EVA는 회피입니다.


원본 주소: http://www.rmxp.org/forums/index.php?topic=46347.0


스샷


=begin
+------------------------------------------------------------------------------+
# ** Stat points distribution system 1.7                                       #
#                  By Lettuce.                                                 #
#                                                                              #
#                                                                              #
#Some help:                                                                    #
#     - Position wasn't stored properly in mode 1 (Thanks Akin)                #
#     - Some sort of notification to player (Thanks Akin)                      #
#     - Player switch now supports LEFT and RIGHT arrow (Thanks Akin)          #
#     - Advice on using class attr instead of global var (Thanks GoldenShadow) #
#                                                                              #
#------------------------------------------------------------------------------#
#  This script lets you distribute points onto your actor's stats              #
#                                                                              #
# Call scene using this: $scene = Scene_Stat_Dist.new(0)                       #
#                                                                              #
#                                                                              #
#  You can give points to your actors by using this code                       #
#                                                                              #
#	 $game_party.members[<member ID>].points += <amount of points>         #
#                                                                              #
#  If you want your actor to get points after leveling:                        #
#  Under Game_Actor, in def change_exp, under the line level_up; paste this    #
#                                                                              #
#			 difference = @level - last_level                      #
#    $game_actors[@actor_id].points += <amount of points>                      #
#                                                                              #
#				OR (if you want RO mode; explained below)      #
#                                                                              #
#      difference = @level - last_level                                        #
#      $game_actors[@actor_id].points += ((@level/5).floor+2).floor*difference #
#                                                                              #
# # It seems the game returns non 0 based array if we use game_party >.<;      #
#                                                                              #
#  **Note**                                                                    #
#  This script does not stop your actors from gaining stats points defined in  #
#  the database. It will just add to it.                                       #
#  Set the stats to 1 all the way in the database to disable growth :0         #
#                                                                              #
#  **Modes**                                                                   #
#  1 : Add one point to the attribute per point                                #
#  2 : Use RO system, attribute with value needs more points to increase.      #
#	  Explanation: In RO, if you got high stats, you need more points to   #
#	 increase it. So if you have 90 ATK and 5 INT...You can                #
#	choose to use 10 points for 1 more ATK OR use that 10 points           #
#	to get 6 INT                                                           #
+------------------------------------------------------------------------------+
=end
############################### Configuration ##################################
#Starting points; how many points to give to actor at the beginning of the game
StartPoints = 20
#Maximum attribute point you allowed in your game
MaxStat = 255
MaxHP = 9999
MaxMP = 999
     #Max hit, eva and crit rate are all in percentage
MaxHIT = 80 # 100 means never miss
MaxEVA = 12 #100 means ALWAYS dodge; very illogical ^^. 50-70 is good rate
MaxCRIT = 15 #100 means always crit o.O

    #How many points needed per increase
PointsPerHP = 2
PointsPerMP = 2
PointsPerHIT = 15
PointsPerEVA = 7
PointsPerCRIT = 5

#How many stats will increase per point?
IncreaseBy = 2
HPIncreaseBy = 25
MPIncreaseBy = 15
HITIncreaseBy = 5
EVAIncreaseBy = 1
CRITIncreaseBy = 1


#1 for normal mode, 2 or RO mode [points required calculated through formula]
Mode = 1
#You can chage font family and size here
Fontname = Font.default_name
Fontsize = 20

#Layout mode, if you use long words for atk,spi,def or agi ; set LayoutMode to 2
LayoutMode = 1

#========================== End Configuration ==================================
OFFSET = -10 #moves equipment part up and down XD
#==============================================================================
# ** Lettuce_Window_Top
#------------------------------------------------------------------------------
#  This window displays Title message
#==============================================================================

class Lettuce_Window_Top < Window_Base
  def initialize
	super(0,0,544,70)
	self.contents = Bitmap.new(width-32,height-32)
	self.contents.font.name = Fontname
	self.contents.font.size = Fontsize
	refresh
	end
	
  def refresh
	self.contents.clear
	self.contents.draw_text(0,-10,544-32,32,"Stat Distribution",1)
	self.contents.font.size = Fontsize-4
	self.contents.draw_text(0,10,544-32,32,"Press left or right to change character",1)
  end
	
end
#==============================================================================
# ** Lettuce_Window_Points
#------------------------------------------------------------------------------
#  This window displays the attributes of a party member
#==============================================================================
class Lettuce_Window_Points < Window_Base
  def initialize(member_index)
	super(401,320,144,52)
	self.contents = Bitmap.new(width-32,height-32)
	self.contents.font.name = Fontname
	self.contents.font.size = Fontsize
	refresh(member_index)
  end
  
  def refresh(member_index)
	actor = $game_party.members[member_index]
	points = actor.points
  self.contents.clear
	self.contents.draw_text(0,0,162,20,"Points: "+points.to_s)	
  end
end

#==============================================================================
# ** Lettuce_Window_Info
#------------------------------------------------------------------------------
#  This window displays the attributes of a party member
#==============================================================================

class Lettuce_Window_Info < Window_Base
  def initialize(member_index)
	super(0,71,400,346)
	self.contents = Bitmap.new(width-32,height-32)
	self.contents.font.name = Fontname
	self.contents.font.size = Fontsize
  @exo = 25 #equipment section X coordinate offset
  @exo2 = 35 #equipment section X coordinate offset
  @eyo = -10 #equipment section Y coordinate offset
	refresh(member_index)
  end
	
  def refresh(member_index)
	actor = $game_party.members[member_index]
	self.contents.clear
  self.contents.font.size = Fontsize
	draw_actor_face(actor,10,10,92)
	draw_actor_name(actor,120,10)
	self.contents.font.size = Fontsize
	self.contents.draw_text(190,30,200,20,"Class: "+actor.class.name)
	self.contents.draw_text(120,30,200,20,"Lv. "+actor.level.to_s)
  
  if LayoutMode == 1
    draw_actor_state(actor,200,280,168)
  elsif LayoutMode == 2
    draw_actor_state(actor,220,10)
  end
  
	s1 = actor.exp_s #total exp
  s2 = actor.current_lvl_exp #exp to get to this level
  if s1.is_a?(Numeric)
    s3 = s1-s2 #progress in this level
    s4 = actor.next_lvl_exp #exp needed for next level
    self.contents.font.size = Fontsize - 5
    self.contents.draw_text(230,74,90,20,"EXP: "+s3.to_s+"/"+s4.to_s,0)
    self.contents.font.size = Fontsize
  else
    self.contents.draw_text(230,74,85,20,"-----/-----",2)
  end
	
	#Preparing bar colours
	back_color = Color.new(39, 58, 83, 255)
	
	str_color1 = Color.new(229, 153, 73, 255)
	str_color2 = Color.new(255, 72, 0, 255)
	
	def_color1 = Color.new(210, 255, 0, 255)
	def_color2 = Color.new(85, 129, 9, 255)
	
	spi_color1 = Color.new(99, 133, 161, 255)
	spi_color2 = Color.new(10, 60,107, 255)
	
	agi_color1 = Color.new(167, 125, 180, 255)
	agi_color2 = Color.new(90, 11, 107, 255)
  
  hp_color1 = Color.new(66, 114, 164, 255)
  hp_color2 = Color.new(122, 175, 229, 255)
  
  mp_color1 = Color.new(93, 50, 158, 255)
  mp_color2 = Color.new(145, 122, 229, 255)
  
  exp_color1 = Color.new(246, 243, 224, 255)
  exp_color2 = Color.new(255, 182, 0, 255)
  if s1.is_a?(Numeric)
    self.contents.fill_rect(230,90,89,7,back_color)
    self.contents.gradient_fill_rect(232,92,(85*s3)/s4,3,exp_color1,exp_color2)

  else
    self.contents.fill_rect(230,60,89,7,back_color)
  end
  
	
  self.contents.fill_rect(120,67,104,7,back_color)
	self.contents.gradient_fill_rect(122,69,100*actor.hp/actor.maxhp,3,hp_color1,hp_color2)
  self.contents.draw_text(120,44,100,30,"HP",0)
  self.contents.draw_text(120,44,100,30,actor.hp.to_s + "/" + actor.maxhp.to_s,2)
  
  self.contents.fill_rect(120,90,104,7,back_color)
	self.contents.gradient_fill_rect(122,92,100*actor.mp/actor.maxmp,3,mp_color1,mp_color2)
  self.contents.draw_text(120,67,100,30,"MP",0)
  self.contents.draw_text(120,67,100,30,actor.mp.to_s + "/" + actor.maxmp.to_s,2)
  
  ##weapons
  weapon = $data_weapons[actor.weapon_id]
  shield = $data_armors[actor.armor1_id]
  helm =$data_armors[actor.armor2_id]
  body =$data_armors[actor.armor3_id]
  accessory =$data_armors[actor.armor4_id]
  
  bonus_atk = 0
  bonus_def = 0
  bonus_spi = 0
  bonus_agi = 0
  evasion = 0
  crit = 4
  
  if $data_actors[actor.id].critical_bonus
    crit +=4
  end
  
  if weapon
    bonus_atk += weapon.atk
    bonus_def += weapon.def
    bonus_spi += weapon.spi
    bonus_agi += weapon.agi
    if weapon.critical_bonus
      crit += 4
    end
  end
  if shield
    bonus_atk += shield.atk
    bonus_def += shield.def
    bonus_spi += shield.spi
    bonus_agi += shield.agi
    evasion += shield.eva
  end
    if helm
    bonus_atk += helm.atk
    bonus_def += helm.def
    bonus_spi += helm.spi
    bonus_agi += helm.agi
    evasion += helm.eva
  end
    if body
    bonus_atk += body.atk
    bonus_def += body.def
    bonus_spi += body.spi
    bonus_agi += body.agi
    evasion += body.eva
  end
    if accessory
    bonus_atk += accessory.atk
    bonus_def += accessory.def
    bonus_spi += accessory.spi
    bonus_agi += accessory.agi
    evasion += accessory.eva
  end
  if LayoutMode == 1
    draw_item_name(weapon,160+@exo,125+@eyo,true)
    if weapon
      two_hand = true if weapon.two_handed == true
    end
    if two_hand      
      draw_item_name(weapon,160+@exo,155+@eyo,true)   
    else
      draw_item_name(shield,160+@exo,155+@eyo,true)
    end
    draw_item_name(helm,160+@exo,185+@eyo,true)
    draw_item_name(body,160+@exo,215+@eyo,true)
    draw_item_name(accessory,160+@exo,245+@eyo,true)
    
    #Testing area for Weapon upgrade script
    #self.contents.font.size = Fontsize - 7
    #self.contents.draw_text(160+@exo,135,30,20,"[+"+weapon.level.to_s+"]",0)
    
    self.contents.font.color = Color.new(87,87,87,255)
    if !weapon 
      #draw_icon(216,160+@exo,125+@eyo,true)
      self.contents.draw_text(184+@exo,127+@eyo,200,20,"Unequipped")
    end
    if !shield 
      #draw_icon(217,160+@exo,155+@eyo,true)
      if !two_hand
      self.contents.draw_text(184+@exo,157+@eyo,200,20,"Unequipped")
      end
    end
    if !helm
      #draw_icon(218,160+@exo,185+@eyo,true)
      self.contents.draw_text(184+@exo,187+@eyo,200,20,"Unequipped")
    end
    if !body
      #draw_icon(219,160+@exo,215+@eyo,true)
      self.contents.draw_text(184+@exo,217+@eyo,200,20,"Unequipped")
    end
    if !accessory
      #draw_icon(220,160+@exo,245+@eyo,true)
      self.contents.draw_text(184+@exo,247+@eyo,200,20,"Unequipped")
    end
    self.contents.font.color = Color.new(255,255,255,255)
    
  elsif LayoutMode == 2
    draw_item_name(weapon,160+@exo2,125+OFFSET+@eyo,true)
    #if weapon
  if weapon
    two_hand = true if weapon.two_handed
  end
      if two_hand
      draw_item_name(weapon,160+@exo2,165+OFFSET+@eyo,true)
    else
      draw_item_name(shield,160+@exo2,165+OFFSET+@eyo,true)
      end
    #end
=begin
    if weapon.two_handed == true
      draw_item_name(weapon,160+@exo2,165+OFFSET+@eyo,true)
    else
      draw_item_name(shield,160+@exo2,165+OFFSET+@eyo,true)
    end
=end
    draw_item_name(helm,160+@exo2,205+OFFSET+@eyo,true)
    draw_item_name(body,160+@exo2,245+OFFSET+@eyo,true)
    draw_item_name(accessory,160+@exo2,285+OFFSET+@eyo,true)
    

      
      self.contents.font.color = Color.new(87,87,87,255)
    if !weapon 
      #draw_icon(216,160+@exo2,125+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,127+OFFSET+@eyo,200,20,"Unequipped")
    end
    if weapon
    if !shield and weapon.two_handed == false
      #draw_icon(217,160+@exo2,165+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,167+OFFSET+@eyo,200,20,"Unequipped")
    end
    else
    if !shield
      #draw_icon(217,160+@exo2,165+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,167+OFFSET+@eyo,200,20,"Unequipped")
    end
    end
    
    if !helm
      #draw_icon(218,160+@exo2,205+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,207+OFFSET+@eyo,200,20,"Unequipped")
    end
    if !body
      #draw_icon(219,160+@exo2,245+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,247+OFFSET+@eyo,200,20,"Unequipped")
    end
    if !accessory
      #draw_icon(220,160+@exo2,285+OFFSET+@eyo,true)
      self.contents.draw_text(184+@exo2,287+OFFSET+@eyo,200,20,"Unequipped")
    end
    self.contents.font.color = Color.new(255,255,255,255)
  end
  
  
  
  self.contents.font.size = Fontsize - 5
	self.contents.draw_text(10,120,100,20,Vocab::atk+": ")
	self.contents.draw_text(10,120,100,20,(actor.atk-bonus_atk).to_s+" + "+bonus_atk.to_s,2)
	
	self.contents.fill_rect(10,140,104,7,back_color)
	self.contents.gradient_fill_rect(12,142,((actor.atk-bonus_atk)*100)/MaxStat,3,str_color1,str_color2)
	
	self.contents.draw_text(10,150,100,20,Vocab::def+": ")
	self.contents.draw_text(10,150,100,20,(actor.def-bonus_def).to_s+" + "+bonus_def.to_s,2)
	
	self.contents.fill_rect(10,170,104,7,back_color)
	self.contents.gradient_fill_rect(12,172,((actor.def-bonus_def)*100)/MaxStat,3,def_color1,def_color2)
	
	self.contents.draw_text(10,180,100,20,Vocab::spi+": ")
	self.contents.draw_text(10,180,100,20,(actor.spi-bonus_spi).to_s+" + "+bonus_spi.to_s,2)
	
	self.contents.fill_rect(10,200,104,7,back_color)
	self.contents.gradient_fill_rect(12,202,((actor.spi-bonus_spi)*100)/MaxStat,3,spi_color1,spi_color2)
	
	self.contents.draw_text(10,210,100,20,Vocab::agi+": ")
	self.contents.draw_text(10,210,100,20,(actor.agi-bonus_agi).to_s+" + "+bonus_agi.to_s,2)
	
	self.contents.fill_rect(10,230,104,7,back_color)
	self.contents.gradient_fill_rect(12,232,((actor.agi-bonus_agi)*100)/MaxStat,3,agi_color1,agi_color2)
	
  if weapon
    hit_rate = weapon.hit
  else
    hit_rate = 95
  end
    
    
  self.contents.font.size = Fontsize - 5 
  self.contents.font.color = Color.new(162,212,98,255)
  self.contents.draw_text(1,245,100,20,"Maximum ATK :",2)
  self.contents.draw_text(1,260,100,20,"Hit rate (%) :",2)
  self.contents.draw_text(1,275,100,20,"Evasion rate (%) :",2)
  self.contents.draw_text(1,290,100,20,"Critical Rate (%) :",2)
  
  self.contents.draw_text(105,245,60,20,(actor.atk*4).to_s,0)
  self.contents.draw_text(105,260,60,20,actor.base_hit.to_s + "+" + actor.hitr.to_s,0)
  self.contents.draw_text(105,275,60,20,actor.base_eva.to_s + "+" +actor.evar.to_s,0)
  self.contents.draw_text(105,290,60,20,actor.base_cri.to_s + "+" + actor.crir.to_s,0)
  
  self.contents.font.size = Fontsize-6
  self.contents.font.color = text_color(16)
  self.contents.draw_text(135,260,60,20,"[Req:"+PointsPerHIT.to_s+"pt.]",2)
  self.contents.draw_text(135,275,60,20,"[Req:"+PointsPerEVA.to_s+"pt.]",2)
  self.contents.draw_text(135,290,60,20,"[Req:"+PointsPerCRIT.to_s+"pt.]",2)
  
  #self.contents.draw_text(120,260,60,20,(hit_rate+actor.hit_bonus).to_s,0)
  #self.contents.draw_text(120,275,60,20,(evasion+actor.eva).to_s,0)
  #self.contents.draw_text(120,290,60,20,(crit+actor.cri_bonus).to_s,0)
  
  if LayoutMode == 1
    
  self.contents.font.color = Color.new(155,199,206,255)
  self.contents.font.size = Fontsize - 8
  if weapon
  self.contents.draw_text(185+@exo,140+@eyo,100,20,Vocab::atk+"+"+weapon.atk.to_s)
  self.contents.draw_text(219+@exo,140+@eyo,100,20,Vocab::def+"+"+weapon.def.to_s)
  self.contents.draw_text(253+@exo,140+@eyo,100,20,Vocab::spi+"+"+weapon.spi.to_s)
  self.contents.draw_text(287+@exo,140+@eyo,100,20,Vocab::agi+"+"+weapon.agi.to_s)
  end

  if shield
  self.contents.draw_text(185+@exo,170+@eyo,100,20,Vocab::atk+"+"+shield.atk.to_s)
  self.contents.draw_text(219+@exo,170+@eyo,100,20,Vocab::def+"+"+shield.def.to_s)
  self.contents.draw_text(253+@exo,170+@eyo,100,20,Vocab::spi+"+"+shield.spi.to_s)
  self.contents.draw_text(287+@exo,170+@eyo,100,20,Vocab::agi+"+"+shield.agi.to_s)
  end
  
  if helm
  self.contents.draw_text(185+@exo,200+@eyo,100,20,Vocab::atk+"+"+helm.atk.to_s)
  self.contents.draw_text(219+@exo,200+@eyo,100,20,Vocab::def+"+"+helm.def.to_s)
  self.contents.draw_text(253+@exo,200+@eyo,100,20,Vocab::spi+"+"+helm.spi.to_s)
  self.contents.draw_text(287+@exo,200+@eyo,100,20,Vocab::agi+"+"+helm.agi.to_s)
  end
  
  if body
  self.contents.draw_text(185+@exo,230+@eyo,100,20,Vocab::atk+"+"+body.atk.to_s)
  self.contents.draw_text(219+@exo,230+@eyo,100,20,Vocab::def+"+"+body.def.to_s)
  self.contents.draw_text(253+@exo,230+@eyo,100,20,Vocab::spi+"+"+body.spi.to_s)
  self.contents.draw_text(287+@exo,230+@eyo,100,20,Vocab::agi+"+"+body.agi.to_s)
  end
  
  if accessory
  self.contents.draw_text(185+@exo,260+@eyo,100,20,Vocab::atk+"+"+accessory.atk.to_s)
  self.contents.draw_text(219+@exo,260+@eyo,100,20,Vocab::def+"+"+accessory.def.to_s)
  self.contents.draw_text(253+@exo,260+@eyo,100,20,Vocab::spi+"+"+accessory.spi.to_s)
  self.contents.draw_text(287+@exo,260+@eyo,100,20,Vocab::agi+"+"+accessory.agi.to_s)
  end
  end
  
	if Mode == 2
	  self.contents.font.size = Fontsize - 8
	  self.contents.font.color = Color.new(155,199,206,255)
	  self.contents.draw_text(23,100,125,20,"POINTS",2)
	  self.contents.draw_text(29,110,125,20,"REQUIRED",2)
	  self.contents.font.size = Fontsize - 4
	  self.contents.draw_text(20,125,115,20,required(actor.atk-bonus_atk).to_s,2)
	  self.contents.draw_text(20,155,115,20,required(actor.def-bonus_def).to_s,2)
	  self.contents.draw_text(20,185,115,20,required(actor.spi-bonus_spi).to_s,2)
	  self.contents.draw_text(20,215,115,20,required(actor.agi-bonus_agi).to_s,2)
	end

  if LayoutMode == 2
  self.contents.font.color = Color.new(155,199,206,255)
  self.contents.font.size = Fontsize - 8
  if weapon
  self.contents.draw_text(185+@exo2,140+OFFSET+@eyo,100,20,Vocab::atk+"+"+weapon.atk.to_s)
  self.contents.draw_text(185+@exo2,150+OFFSET+@eyo,100,20,Vocab::def+"+"+weapon.def.to_s)
  self.contents.draw_text(253+@exo2,140+OFFSET+@eyo,100,20,Vocab::spi+"+"+weapon.spi.to_s)
  self.contents.draw_text(253+@exo2,150+OFFSET+@eyo,100,20,Vocab::agi+"+"+weapon.agi.to_s)
  end

  if shield
  self.contents.draw_text(185+@exo2,180+OFFSET+@eyo,100,20,Vocab::atk+"+"+shield.atk.to_s)
  self.contents.draw_text(185+@exo2,190+OFFSET+@eyo,100,20,Vocab::def+"+"+shield.def.to_s)
  self.contents.draw_text(253+@exo2,180+OFFSET+@eyo,100,20,Vocab::spi+"+"+shield.spi.to_s)
  self.contents.draw_text(253+@exo2,190+OFFSET+@eyo,100,20,Vocab::agi+"+"+shield.agi.to_s)
  end
  
  if helm
  self.contents.draw_text(185+@exo2,220+OFFSET+@eyo,100,20,Vocab::atk+"+"+helm.atk.to_s)
  self.contents.draw_text(185+@exo2,230+OFFSET+@eyo,100,20,Vocab::def+"+"+helm.def.to_s)
  self.contents.draw_text(253+@exo2,220+OFFSET+@eyo,100,20,Vocab::spi+"+"+helm.spi.to_s)
  self.contents.draw_text(253+@exo2,230+OFFSET+@eyo,100,20,Vocab::agi+"+"+helm.agi.to_s)
  end
  
  if body
  self.contents.draw_text(185+@exo2,260+OFFSET+@eyo,100,20,Vocab::atk+"+"+body.atk.to_s)
  self.contents.draw_text(185+@exo2,270+OFFSET+@eyo,100,20,Vocab::def+"+"+body.def.to_s)
  self.contents.draw_text(253+@exo2,260+OFFSET+@eyo,100,20,Vocab::spi+"+"+body.spi.to_s)
  self.contents.draw_text(253+@exo2,270+OFFSET+@eyo,100,20,Vocab::agi+"+"+body.agi.to_s)
  end
  
  if accessory
  self.contents.draw_text(185+@exo2,300+OFFSET+@eyo,100,20,Vocab::atk+"+"+accessory.atk.to_s)
  self.contents.draw_text(185+@exo2,310+OFFSET+@eyo,100,20,Vocab::def+"+"+accessory.def.to_s)
  self.contents.draw_text(253+@exo2,300+OFFSET+@eyo,100,20,Vocab::spi+"+"+accessory.spi.to_s)
  self.contents.draw_text(253+@exo2,310+OFFSET+@eyo,100,20,Vocab::agi+"+"+accessory.agi.to_s)
  end
  end
end

  def required(base)
	return (((base-1)/10)+2).floor
  end
  
end

#==============================================================================
# ** Lettuce_Window_Help
#------------------------------------------------------------------------------
#  This window displays property of each attribute
#==============================================================================
class Lettuce_Window_Help < Window_Base
  def initialize(index)
	super(401,372,144,44)
	self.contents = Bitmap.new(width-32,height-32)
	self.contents.font.size = Fontsize - 6
	refresh(index)
  end
  
  def refresh(index)
	self.contents.clear
  self.contents.font.color = text_color(16)

    case index
    when 0
      self.contents.draw_text(0,-5,112,20,"HP + "+HPIncreaseBy.to_s)
    when 1
      self.contents.draw_text(0,-5,112,20,"MP + "+MPIncreaseBy.to_s)
    when 2
      self.contents.draw_text(0,-5,112,20,Vocab::atk+" + "+IncreaseBy.to_s)
    when 3
      self.contents.draw_text(0,-5,112,20,Vocab::def+" + "+IncreaseBy.to_s)
    when 4
      self.contents.draw_text(0,-5,112,20,Vocab::spi+" + "+IncreaseBy.to_s)
    when 5
      self.contents.draw_text(0,-5,112,20,Vocab::agi+" + "+IncreaseBy.to_s)
    when 6
      self.contents.draw_text(0,-5,112,20,"HIT + "+HITIncreaseBy.to_s)
    when 7
      self.contents.draw_text(0,-5,112,20,"EVA + "+EVAIncreaseBy.to_s)
    when 8
      self.contents.draw_text(0,-5,112,20,"CRIT + "+CRITIncreaseBy.to_s)
    end

  
  end
  
end
  

#==============================================================================
# ** Scene_Stat_Dist
#------------------------------------------------------------------------------
#  Performs stat distribution process :)
#==============================================================================
class Scene_Stat_Dist < Scene_Base
  def initialize(menu_index)
	@menu_index = menu_index
  end
  
  def start
	super
	create_menu_background
  ihp = Vocab::hp
  imp = Vocab::mp
	i1 = Vocab::atk
	i2 = Vocab::def
	i3 = Vocab::spi
	i4 = Vocab::agi
  i5 = "HIT"
  i6 = "EVA"
  i7 = "CRIT"
	@window_select = Window_Command.new(144,[ihp,imp,i1,i2,i3,i4,i5,i6,i7])
	if $position
	  @window_select.index = $position - 1
	else
	  @window_select.index = 0
	end
	
	@window_select.active = true
	@window_select.x = 401
	@window_select.y = 71
	
	@window_top = Lettuce_Window_Top.new
	@window_points = Lettuce_Window_Points.new(@menu_index)
	@window_info = Lettuce_Window_Info.new(@menu_index)
	@window_help = Lettuce_Window_Help.new(@window_select.index)
  end
	
  def terminate
	super
	dispose_menu_background
	@window_top.dispose
	@window_points.dispose
	@window_info.dispose
	@window_help.dispose
	@window_select.dispose
  end
  
  def update
	update_menu_background
	#@window_points.refresh(@menu_index)
  
	@window_select.update
	#@window_help.refresh(@window_select.index)
  if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)
    @window_help.refresh(@window_select.index)
  end
  
	@changes = 0
	if Input.trigger?(Input::B)
	  Sound.play_cancel
	  $scene = Scene_Map.new
	elsif Input.trigger?(Input::R) or Input.trigger?(Input::RIGHT)
	  @menu_index += 1
	  @menu_index %= $game_party.members.size
	  $scene = Scene_Stat_Dist.new(@menu_index)
	elsif Input.trigger?(Input::L) or Input.trigger?(Input::LEFT)
	  @menu_index += $game_party.members.size - 1
	  @menu_index %= $game_party.members.size
	  $scene = Scene_Stat_Dist.new(@menu_index)
	elsif Input.trigger?(Input::C)
	  #Points addition begins
	  #which attribute
	  if Mode == 1
		do_point_reg
	  elsif Mode == 2
		do_point_rag
	  end
	end  

  end
  
  def do_point_reg
	@att = @window_select.index
  
  actor = $game_party.members[@menu_index]
  
##weapons
  weapon = $data_weapons[actor.weapon_id]
  shield = $data_armors[actor.armor1_id]
  helm =$data_armors[actor.armor2_id]
  body =$data_armors[actor.armor3_id]
  accessory =$data_armors[actor.armor4_id]
  
  bonus_atk = 0
  bonus_def = 0
  bonus_spi = 0
  bonus_agi = 0
  
  if weapon
    bonus_atk += weapon.atk
    bonus_def += weapon.def
    bonus_spi += weapon.spi
    bonus_agi += weapon.agi
  end
  if shield
    bonus_atk += shield.atk
    bonus_def += shield.def
    bonus_spi += shield.spi
    bonus_agi += shield.agi
  end
    if helm
    bonus_atk += helm.atk
    bonus_def += helm.def
    bonus_spi += helm.spi
    bonus_agi += helm.agi
  end
    if body
    bonus_atk += body.atk
    bonus_def += body.def
    bonus_spi += body.spi
    bonus_agi += body.agi
  end
    if accessory
    bonus_atk += accessory.atk
    bonus_def += accessory.def
    bonus_spi += accessory.spi
    bonus_agi += accessory.agi
  end
  
	  case @att
    
    when 0 #HP
		if actor.points < PointsPerHP
		  Sound.play_cancel
		elsif actor.maxhp >= MaxHP
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].maxhp += HPIncreaseBy
      if $game_party.members[@menu_index].maxhp > MaxHP
        $game_party.members[@menu_index].maxhp = MaxHP
      end
		  actor.points -= PointsPerHP
		  @changes += 1
      $position = 1
		end
    
    when 1 #MP
		if actor.points < PointsPerMP
		  Sound.play_cancel
		elsif actor.maxmp >= MaxMP
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].maxmp += MPIncreaseBy
      if $game_party.members[@menu_index].maxmp > MaxMP
        $game_party.members[@menu_index].maxmp = MaxMP
      end
		  actor.points -= PointsPerMP
		  @changes += 1
      $position = 1
		end
    
	  when 2 #ATK
		if actor.points < 1
		  Sound.play_cancel
		elsif (actor.atk-bonus_atk) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].atk += IncreaseBy
      if ($game_party.members[@menu_index].atk-bonus_atk) > MaxStat
        $game_party.members[@menu_index].atk = MaxStat+bonus_atk
      end
		  actor.points -= 1
		  @changes += 1
      $position = 1
		end
		
	  when 3 #DEF
		if actor.points < 1
		  Sound.play_cancel
		elsif (actor.def-bonus_def) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].def += IncreaseBy
      if ($game_party.members[@menu_index].def-bonus_def) > MaxStat
        $game_party.members[@menu_index].def = MaxStat+bonus_def
      end
		  actor.points -= 1
		  @changes += 1
      $position = 2
		end
		
	  when 4 #SPI
		if actor.points < 1
		  Sound.play_cancel
		elsif (actor.spi-bonus_spi) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].spi += IncreaseBy
      if ($game_party.members[@menu_index].spi-bonus_spi) > MaxStat
        $game_party.members[@menu_index].spi = MaxStat+bonus_spi
      end
		  actor.points -= 1
		  @changes += 1
      $position = 3
		end
	  when 5 #AGI
		if actor.points < 1
		  Sound.play_cancel
		elsif (actor.agi-bonus_agi) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].agi += IncreaseBy
      if ($game_party.members[@menu_index].agi-bonus_agi) > MaxStat
        $game_party.members[@menu_index].agi = MaxStat+bonus_agi
      end
		  actor.points -= 1
		  @changes += 1
      $position = 4
		end
	  
	  
    when 6 #HIT
		if actor.points < PointsPerHIT
		  Sound.play_cancel
		elsif actor.hitr >= MaxHIT
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].hitr += HITIncreaseBy
      if $game_party.members[@menu_index].hitr > MaxHIT
        $game_party.members[@menu_index].hitr = MaxHIT
      end
		  actor.points -= PointsPerHIT
		  @changes += 1
      $position = 1
		end
    when 7 #EVA
		if actor.points < PointsPerEVA
		  Sound.play_cancel
		elsif actor.evar >= MaxEVA
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].evar += EVAIncreaseBy
      if $game_party.members[@menu_index].evar > MaxEVA
        $game_party.members[@menu_index].evar = MaxEVA
      end
		  actor.points -= PointsPerEVA
		  @changes += 1
      $position = 1
		end
    when 8 #CRIT
		if actor.points < PointsPerCRIT
		  Sound.play_cancel
		elsif actor.crir >= MaxCRIT
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].crir += CRITIncreaseBy
      if $game_party.members[@menu_index].crir > MaxCRIT
        $game_party.members[@menu_index].crir = MaxCRIT
      end
		  actor.points -= PointsPerCRIT
		  @changes += 1
      $position = 1
		end
  end
  
  if @changes > 0
      @window_info.refresh(@menu_index)
      @window_points.refresh(@menu_index)
		  #$scene = Scene_Stat_Dist.new(@menu_index)
	  end
  end
  
  def do_point_rag
	@att = @window_select.index
  
  actor = $game_party.members[@menu_index]
  
##weapons
  weapon = $data_weapons[actor.weapon_id]
  shield = $data_armors[actor.armor1_id]
  helm =$data_armors[actor.armor2_id]
  body =$data_armors[actor.armor3_id]
  accessory =$data_armors[actor.armor4_id]
  
  bonus_atk = 0
  bonus_def = 0
  bonus_spi = 0
  bonus_agi = 0
  
  if weapon
    bonus_atk += weapon.atk
    bonus_def += weapon.def
    bonus_spi += weapon.spi
    bonus_agi += weapon.agi
  end
  if shield
    bonus_atk += shield.atk
    bonus_def += shield.def
    bonus_spi += shield.spi
    bonus_agi += shield.agi
  end
    if helm
    bonus_atk += helm.atk
    bonus_def += helm.def
    bonus_spi += helm.spi
    bonus_agi += helm.agi
  end
    if body
    bonus_atk += body.atk
    bonus_def += body.def
    bonus_spi += body.spi
    bonus_agi += body.agi
  end
    if accessory
    bonus_atk += accessory.atk
    bonus_def += accessory.def
    bonus_spi += accessory.spi
    bonus_agi += accessory.agi
  end
  
	  case @att
    
    when 0 #HP
		if actor.points < PointsPerHP
		  Sound.play_cancel
		elsif actor.maxhp >= MaxHP
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].maxhp += HPIncreaseBy
      if $game_party.members[@menu_index].maxhp > MaxHP
        $game_party.members[@menu_index].maxhp = MaxHP
      end
		  actor.points -= PointsPerHP
		  @changes += 1
      $position = 1
		end
    
    when 1 #MP
		if actor.points < PointsPerMP
		  Sound.play_cancel
		elsif actor.maxmp >= MaxMP
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].maxmp += MPIncreaseBy
      if $game_party.members[@menu_index].maxmp > MaxMP
        $game_party.members[@menu_index].maxmp = MaxMP
      end
		  actor.points -= PointsPerMP
		  @changes += 1
      $position = 1
		end
    
	  when 2 #ATK
		base_value = actor.atk-bonus_atk
		points = actor.points
		if enough_point(base_value,points)
		  Sound.play_cancel
		elsif (actor.atk-bonus_atk) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].atk += IncreaseBy
      if ($game_party.members[@menu_index].atk-bonus_atk) > MaxStat
        $game_party.members[@menu_index].atk = MaxStat+bonus_atk
      end
		  actor.points -= required(base_value)
		  @changes += 1
		  $position = 1
		end
		
	  when 3 #DEF
		base_value = actor.def-bonus_def
		points = actor.points
		if enough_point(base_value,points)
		  Sound.play_cancel
		elsif (actor.def-bonus_def) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].def += IncreaseBy
      if ($game_party.members[@menu_index].def-bonus_def) > MaxStat
        $game_party.members[@menu_index].def = MaxStat+bonus_def
      end
		  actor.points -= required(base_value)
		  @changes += 1
		  $position = 2
		end
		
	  when 4 #SPI
		base_value = actor.spi-bonus_spi
		points = actor.points
		if enough_point(base_value,points)
		  Sound.play_cancel
		elsif (actor.spi-bonus_spi) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].spi += IncreaseBy
      if ($game_party.members[@menu_index].spi-bonus_spi) > MaxStat
        $game_party.members[@menu_index].spi = MaxStat+bonus_spi
      end
		  actor.points -= required(base_value)
		  @changes += 1
		  $position = 3
		end
	  when 5 #AGI
		base_value = actor.agi-bonus_agi
		points = actor.points
		if enough_point(base_value,points)
		  Sound.play_cancel
		elsif (actor.agi-bonus_agi) >= MaxStat
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].agi += IncreaseBy
      if ($game_party.members[@menu_index].agi-bonus_agi) > MaxStat
        $game_party.members[@menu_index].agi = MaxStat+bonus_agi
      end
		  actor.points -= required(base_value)
		  @changes += 1
		  $position = 4
		end
    when 6 #HIT
		if actor.points < PointsPerHIT
		  Sound.play_cancel
		elsif actor.hitr >= MaxHIT
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].hitr += HITIncreaseBy
      if $game_party.members[@menu_index].hitr > MaxHIT
        $game_party.members[@menu_index].hitr = MaxHIT
      end
		  actor.points -= PointsPerHIT
		  @changes += 1
      $position = 1
		end
    when 7 #EVA
		if actor.points < PointsPerEVA
		  Sound.play_cancel
		elsif actor.evar >= MaxEVA
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].evar += EVAIncreaseBy
      if $game_party.members[@menu_index].evar > MaxEVA
        $game_party.members[@menu_index].evar = MaxEVA
      end
		  actor.points -= PointsPerEVA
		  @changes += 1
      $position = 1
		end
    when 8 #CRIT
		if actor.points < PointsPerCRIT
		  Sound.play_cancel
		elsif actor.crir >= MaxCRIT
		  Sound.play_cancel
		else
      Sound.play_use_item
		  $game_party.members[@menu_index].crir += CRITIncreaseBy
      if $game_party.members[@menu_index].crir > MaxCRIT
        $game_party.members[@menu_index].crir = MaxCRIT
      end
		  actor.points -= PointsPerCRIT
		  @changes += 1
      $position = 1
		end
	  end
	  if @changes > 0
      @window_points.refresh(@menu_index)
      @window_info.refresh(@menu_index)
		#$scene = Scene_Stat_Dist.new(@menu_index)
	  end
  end
  
  def enough_point(base,points)
	required = (((base-1)/10)+2).floor
	if required > points
	  return true
	elsif required <= points
	  return false
	end
  end
  
  def required(base)
	return (((base-1)/10)+2).floor
  end
  
end


#==============================================================================
# ** Game_Actor
#------------------------------------------------------------------------------
#  Giving game actor a point attribute
#  -> $game_party.member[x].points
#==============================================================================

class Game_Actor < Game_Battler

  attr_accessor :points
  attr_accessor :hit_bonus
  attr_accessor :eva_bonus
  attr_accessor :cri_bonus
  attr_accessor :hitr
  attr_accessor :evar
  attr_accessor :crir
  #attr_accessor :current_lvl_exp
  #attr_accessor :next_lvl_exp
  alias Lettuce_Game_Actor_Ini initialize
  
  def initialize(actor_id)
    Lettuce_Game_Actor_Ini(actor_id)
     @points = StartPoints
     @hitr = 0
     @evar = 0
     @crir = 0
     #@current_lvl_exp = @exp_list[@level-1]
     #@next_lvl_exp = @exp_list[@level]
  end

  def points
     return @points
  end
  
  #--------------------------------------------------------------------------
  # * Get Hit Rate
  #--------------------------------------------------------------------------
  def hit
    if two_swords_style
      n1 = weapons[0] == nil ? 95 : weapons[0].hit
      n2 = weapons[1] == nil ? 95 : weapons[1].hit
      n = [n1, n2].min
    else
      n = weapons[0] == nil ? 95 : weapons[0].hit
    end
    if n+@hitr <= MaxHIT
    return n+@hitr
  else return MaxHIT
    end
  end
  #--------------------------------------------------------------------------
  # * Get Evasion Rate
  #--------------------------------------------------------------------------
  def eva
    n = 5
    for item in armors.compact do n += item.eva end
    if n+@evar <= MaxEVA
     return n+@evar
   else return MaxEVA
     end
  end
  #--------------------------------------------------------------------------
  # * Get Critical Ratio
  #--------------------------------------------------------------------------
  def cri
    n = 4
    n += 4 if actor.critical_bonus
    for weapon in weapons.compact
      n += 4 if weapon.critical_bonus
    end
    if n+@crir <= MaxCRIT
      return n+@crir
    else return MaxCRIT
      end
  end
  
 #--------------------------------------------------------------------------
  # * Get Hit Rate
  #--------------------------------------------------------------------------
  def base_hit
    if two_swords_style
      n1 = weapons[0] == nil ? 95 : weapons[0].hit
      n2 = weapons[1] == nil ? 95 : weapons[1].hit
      n = [n1, n2].min
    else
      n = weapons[0] == nil ? 95 : weapons[0].hit
    end
    return n
  end
  #--------------------------------------------------------------------------
  # * Get Evasion Rate
  #--------------------------------------------------------------------------
  def base_eva
    n = 5
    for item in armors.compact do n += item.eva end
    return n
  end
  #--------------------------------------------------------------------------
  # * Get Critical Ratio
  #--------------------------------------------------------------------------
  def base_cri
    n = 4
    n += 4 if actor.critical_bonus
    for weapon in weapons.compact
      n += 4 if weapon.critical_bonus
    end
    return n
  end
  
  
  #--------------------------------------------------------------------------
  # * bonus rates
  #--------------------------------------------------------------------------   
  def hitr
    return @hitr
  end
  
  def evar
    return @evar
  end
  
  def crir
    return @crir
  end
    
    
  
  def current_lvl_exp
    return @exp_list[@level]
  end
  
  def next_lvl_exp
    return @exp_list[@level+1]-@exp_list[@level]
  end
end


출처는 Lettuce 님이 만드신거에요

잘써주세요

Comment '29'
  • ?
    변남 2008.08.08 11:14
    이게 스크립트가 어떤 능력을 가진 건지 잘 모르겠는데...
    아무튼
    감사합니다.
    근데 난 쓰니까
    48줄 오류....?
  • ?
    아담 2008.08.08 11:19
    오류가 한두군데가 아니군요 ㅡ.ㅡ;;
    스크립트 자체가 이상하네요. 옮기는 도중 인식이 잘못 된것 같은데 원본 주소를 가르쳐주세요.

    그리고 48줄 오류는 주석처리부분에서 end를 써서 오류가 나는겁니다.
    지우면 되구요.
  • ?
    츠키아 2008.08.08 11:25
    이 스크립트 효과는 보통의 RPG 처럼 스탯을 찍어 능력치를 성장시키는 것이고요
    예제 파일 올릴게요

    아담/ 전 잘 되는데요.....
  • ?
    츠키아 2008.08.08 11:32
    출처도 올렸습니다
  • ?
    유키히로 2008.08.08 14:50

    그냥 붙여넣으면 돼나 ㅇ?

  • ?
    츠키아 2008.08.08 17:49
    유키히로님 메인 위에 걍 삽입하세요
  • ?
    아방스마니아 2008.08.08 18:13
    뭐가잘돼요;..
    오류엄청많구만
  • ?
    정의로운녀석 2008.08.10 15:27

    RMXP 스크립터들은 TOMY보다 유용성같은건 좋지만..  역시 커스텀이 너무 약하다는;

  • ?
    만들어보자꾸나 2008.08.11 14:32

     좋은 스크립트네요..
     다만, 장비확장 스크립트와 같이 쓰려면 좀 뜯어고쳐야겟네요;
     어쨌든 감사합니다.

  • ?
    츠키아 2008.08.11 15:02
    아방스매니아/ 님이 다른 스크립트랑 연동해서 사용하시다가 스크립트간 충돌일어난걸 가지고 왜 이 스크립트 탓을 하는지요.
  • ?
    RPG만들기의천재 2008.08.13 03:58
    흠좋긴한데,,,,,
    레벨업을하여도
    포인트는 올라가지않는다는게좀...
  • ?
    자유소년 2008.08.15 20:39
    저도 그렇습니다. 레벨업을 해도,
    포인트가 올라가지 않습니다..
  • ?
    zerobm 2008.08.23 11:49
    뭥미.. 레벨업해도 포인트안올라감 ; 완벽하긴한데 쫌 그렇네
  • ?
    KG3 2008.09.01 20:31

    되긴 되네요 ㅎㅎ
    랩업해도 포인트가 안올라서 그렇지......
    굿이예염

  • ?
    시옷청룡 2008.10.01 17:39
    안뎀...ㅁ
  • ?
    plusll 2008.10.12 10:28
    감사합니다^^
  • ?
    다크아머 2008.10.25 11:02
    좋은자료 감사하므니다.
  • profile
    요시2 2008.11.16 18:54
    좋은 자료 감사합니다.
  • ?
    츠키아 2008.12.03 15:30
    렙업했을시 포인트 올리는건 이벤트 처리 해주시면 됩니다;;
  • ?
    Mok 2008.12.19 03:10
    이벤트 처리 어떤식으로 해야하죠??
    포인트는 변수값인가요??

    스크립트에 대해서 잘몰라서;;
    레벨업마다 포인트를 주려면 어떻게 해야하나요~~ㅎㅎ
  • ?
    피터 2008.12.11 22:42
    ..후아...설명이 없으니 어디를 어떻게 만저야할지 모르겠네...
  • ?
    루이14세 2009.02.01 15:21
    안되는데요....
  • ?
    훈덕 2009.05.07 16:55

    렙업시 포인트 올리는 방법입니다:

    스크립트 에디터에서 Game_Actor로 가서 컨트롤+F 누르고 def change_exp 를 찾는다.

    거기서 level_up 이라는 라인 밑에 아래 코드를 붙여 넣는다.

          #---------Give Points
          difference = @level - last_level
          $game_actors[@actor_id].points += ((@level/5).floor+2).floor*difference
          #actor.points += ((@level/5).floor+2).floor*difference
          #---------Done giving points :D

  • ?
    화염 2009.12.26 22:04

    뭔지잘모르겟음 ㅋㅋ

  • ?
    dwjsdf 2010.01.20 11:15

    감사해요

  • profile
    비극ㆍ 2010.02.10 09:56

    SyntaxError occured while running script

    라고 뜨네여...

    충돌인가여 아니면 오륜가여...?

  • profile
    JEWAPPI 2010.06.23 23:03

    이거슨 완벽한 제가 찾던 스크립트임...!!

    이벤트로도 가능하지만

    이렇게 심플하고 상세하게 나오다니...!

  • ?
    ijsh515 2010.07.10 10:46

  • ?
    허시 2011.06.20 22:21

    잘 쓸게용~


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
457 메뉴 CogWheelBars 시스템. 13 file 할렘 2009.02.20 4362
456 메뉴 [자작]명성치 사용 시스템(메뉴 출력) 16 Rainsy 2009.03.22 4360
455 기타 심플 마우스 시스템 1.5 애드온 11 file RMdude 2009.02.11 4325
454 그래픽 밤낮 변환 VX용 26 독도2005 2008.03.23 4314
453 맵/타일 VX Mode 7 스크립트!!!! 42 file Tofuman 2009.01.07 4306
452 기타 집안의 가구를 내마음대로 데코레이션하기 15 file EuclidE 2010.09.18 4303
451 이동 및 탈것 자동 이동 시스템 20 file 허걱 2010.04.21 4303
450 메시지 MultiMessage 멀티 메시지 스크립트 9 file 허걱 2010.02.23 4296
449 상태/속성 상태 메뉴 변경 스크립트 45 죄송해욧! 2008.03.01 4284
448 기타 [자작] 횡스크롤 점프스크립트 18 file 좀비사냥꾼 2009.04.03 4276
447 기타 (이거 정말 좋군요) 말이나 용을 탈수있게 하는 스크립트. 31 file 아방스가 짱 2010.02.28 4261
446 메시지 네오 메시지 시스템 최신 17 file RPGbooster 2008.10.08 4251
445 전투 XAS Hero Edition VX 15 Alkaid 2011.12.28 4226
444 기타 아이콘 캐릭터 17 file 허걱 2010.02.28 4225
» 액터 스탯 시스탬 29 츠키아 2008.08.08 4214
442 기타 개인판타지메뉴+업그래이드 배틀 23 file 콩밥 2010.08.02 4211
441 키입력 답을 입력하는 텍스트박스 스크립트!! 21 file 좀비사냥꾼 2009.03.29 4206
440 메뉴 몬스터도감(유즈미짱님의엘카르디아같은종류) 1 작은샛별 2010.03.07 4200
439 fog[안개] 효과 43 file RPGbooster 2008.10.08 4196
438 레벨업시 자세한 능력치화면 31 file RPGbooster 2008.10.08 4181
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