XP 스크립트

http://www.gamebaker.com/rmxp/scripts/multiple-currencies.htm
  복수의 화폐단위를 사용할 수 있게 하는 스크립트입니다.  예전에 올렸던 것의 버전업판.  이 스크립트를 사용하려면 SG_Setting Control(http://www.gamebaker.com/rmxp/scripts/settings-control.htm )과 SG_Window Control(http://www.gamebaker.com/rmxp/scripts/window-control.htm )이 필요합니다.


#=============================================================================
# ** SG Multiple Currencies
#=============================================================================
# sandgolem   
# Version 3
# 18.06.06
#=============================================================================

# This requires event scripting to switch, see below.
# The only script-related things to edit is this:

$sg_currencies = { 'names' => ['Temp','G','Tokens','Tickets'],
                  'icons' => ['','mbag','coin','card'],
                  'type' => [7,0,0,0],
                  'variables' => [7,2,3,4] }
                 
# These need to be ordered exactly the same. You can increase the amount of
# currencies by adding more to the end of each.

# Temp is used for special occasions. See the tutorials section here for some
# odd ways of using it:  http://www.gamebaker.com/rmxp/tutorials/

# Set the G to what you have your gold name as in the database.

# Icons, type & vars are picked based on the order that you have your names set
# to. Make sure you name the variables in RMXP so you won't reuse them.

# 'type' uses SG Window Control to set the window format.
# See the comments in that script for what options are available.

#=============================================================================

# To change the player's currency, use this in a call script:
#        sg_change_currency('NameHere')

# This changes your current currency and modifies the amount of gold you have
# to whatever it is set at. The amount of gold you had before is set to the
# variable listed for it. This can be used anywhere, even in other scripts

# The variable used for your current gold is NOT altered until you change the
# currency. To do checks for that amount ingame, just use the regular gold.

# Or, you can save it by using this in a script: sg_save_currency
# This command is included in sg_change_currency and generally not useful

#=============================================================================
#
# To check for updates or find more scripts, visit:
# http://www.gamebaker.com/rmxp/scripts/
#
# To use this script, copy it and insert it in a new section above "Main",
# under the default scripts and Software Development Kit (optional).
#
# Requires SG Settings Control & SG Window Control, found at above site
#
# Have problems? You can leave me a message at:
# http://www.gamebaker.com/users/sandgolem
#
#=============================================================================

#--------------------------------------------------------------------------
# * SDK Log Script
#--------------------------------------------------------------------------
begin
  SDK.log("SG Multiple Currencies", "sandgolem", 3, "18.06.06")
  if SDK.state("SG Multiple Currencies") != true
    @sg_multiple_currencies_disabled = true
  end
  rescue
end

#--------------------------------------------------------------------------
# * Begin SDK Enable Test
#--------------------------------------------------------------------------
if !@sg_multiple_currencies_disabled
 
class SG_Start
  alias sandgolem_currencies_sgstart_start start_game 
  def start_game
    if !$sg_defaultcurrency
      $sg_defaultcurrency = $data_system.words.gold.clone
    else
      $data_system.words.gold = $sg_defaultcurrency.clone
    end
    sandgolem_currencies_sgstart_start
  end
end

class Scene_Load
  alias sandgolem_currencies_load_read read_save_data
  def read_save_data(file)
    sandgolem_currencies_load_read(file)
    if $game_sg['currency current']
      $data_system.words.gold = $game_sg['currency current'].clone
    end
  end
end

class Window_Gold < Window_Base
 
  alias sg_currencies_gold_initialize initialize
  def initialize
    @old_gold = -1
    sg_currencies_gold_initialize
  end

  def refresh
#------------------------------------------------------------------------------
# Begin SG Multiple Currencies Edit
#------------------------------------------------------------------------------
    if @old_gold != $game_party.gold
      self.contents.clear
      @old_gold = $game_party.gold
      self.contents.font.color = normal_color
      sg_select_currency
      sg_draw_window($sg_currencies['type'][@sg_mc_temp],160,$sg_currencies['icons'][@sg_mc_temp],$data_system.words.gold,$game_party.gold.to_s)
    end
#------------------------------------------------------------------------------
# End SG Multiple Currencies Edit
#------------------------------------------------------------------------------
  end

  def sg_select_currency
    for i in 0...$sg_currencies.size
      if $data_system.words.gold == $sg_currencies['names'][i]
        @sg_mc_temp = i
        return
      end
    end
    @sg_mc_temp = 1
    return
  end
end

def sg_save_currency
  for i in 0...$sg_currencies.size
    if $data_system.words.gold == $sg_currencies['names'][i]
      $game_variables[$sg_currencies['variables'][i]] = $game_party.gold
      return
    end
  end
  p 'You have an invalid currency name! Contact game creator: ' + $data_systems.words.gold.to_s
  @sg_mc_currency_stop = true
  return
end

def sg_change_currency(curnew)
  sg_save_currency
  if curnew == 'curold'
    if $game_sg['currency old']
      curnew = $game_sg['currency old']
    else
      p 'No old currency saved. Contact game creator.'
    end
  end
  if @sg_mc_currency_stop == true
    return
  end
  $game_sg['currency old'] = $data_system.words.gold.clone
  sg_mc_temp = 0
  for i in 0...$sg_currencies.size
    if curnew == $sg_currencies['names'][i]
      $game_party.lose_gold($game_party.gold)
      $game_party.gain_gold($game_variables[$sg_currencies['variables'][i]])
      $data_system.words.gold = curnew
      $game_sg['currency current'] = curnew
      return
    end
  end
  p 'Invalid currency name in command! Contact game creator: ' + cur_new.to_s
  return
end

#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end

Who's 백호

?

이상혁입니다.

http://elab.kr


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6202
701 상점 상점 메뉴 개조시킨 스크립트 9 file 백호 2009.02.21 2322
700 전투 사이트뷰 전투 스크립트 (CBS R1) 8 file 백호 2009.02.21 3499
699 전투 사이비 CTB 1 file 백호 2009.02.21 1701
698 전투 사이드뷰 전투(보행그래픽) 15 file 백호 2009.02.21 4244
697 전투 사이드뷰 배틀 (2003 형식으 전투)| 12 file 아방스 2007.11.09 4747
696 전투 사이드뷰 방식 스크립트. 8 file 백호 2009.02.21 4640
695 기타 빛의 퍼즐 -미니게임- 1 file 백호 2009.02.21 1360
694 메뉴 비밀소년님의 필드에서 경치 % 로 나오는거 윈도우 없이 8 백호 2009.02.22 1793
693 기타 비밀소년님의 경험치 표시 스크립트 백호 2009.02.22 1419
692 비공정 스크립트의 탑승속도 변경하기. 3 아방스 2008.01.14 1346
691 이동 및 탈것 비공정 스크립트 5 file 백호 2009.02.22 1506
690 기타 분류 별로 윈도우 스킨 다르게 사용하기 file 백호 2009.02.21 1015
689 기타 부활스크립트 4 캉쿤 2011.09.19 2066
688 그래픽 부드럽게 화면이 움직이는 스크립트 입니다. 16 GangSin 2012.09.12 4594
687 기타 복권 스크립트 6 백호 2009.02.21 1258
686 전투 보행그래픽으로 싸우는 턴알 17 백호 2009.02.22 3782
685 전투 버틀러 색조 변경 5 file 백호 2009.02.21 1552
684 이동 및 탈것 백호님이올린 발소리 스크립트를 소리만 바꾸어 밨음 4 lhh9606 2009.05.19 2680
683 전투 배틀포인트 + 배틀샵 1 file 백호 2009.02.21 1272
682 전투 배틀샵 스크립트 1 백호 2009.02.22 1126
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