UltimaForum

Wsparcie [VX] - Skrypt

Agumon - Sob 02 Paź, 2010 20:11
Temat postu: Skrypt
Witam poszukuję skryptu który dodaje mi dodatkową walutę w menu.Wiem że jest taki skrypt na forum ale mi chodzi o coś takiego że tyle bym miał tej waluty ile np zmiennej 0001:np.Diament. Mam nadzieje że zrozumiale napisałem.
CreeperCrisis - Sob 02 Paź, 2010 21:20

Zmodyfikowałem skrypt Teyan'a:
Spoiler:

Kod:
#===============================================================================
#
# DODATKOWA WALUTA - ZMIENNE
#
# CRISIS CORE PRODUCTIONS
#
# TEYAN MODIFIED SCRIPT xD
#
#===============================================================================

#===============================================================================
# PRZEŁĄCZNIK:
#
# OFF - NOWA WALUTA
# ON - STARA WALUTA
#===============================================================================
GOLD = 1

#===============================================================================
# SKRYPT
#===============================================================================

#===============================================================================
# WINDOW_GOLD
#===============================================================================
class Window_Gold < Window_Base
  def initialize(x, y)
    super(x, y, 160, WLH * 2 + 32)
    refresh
  end
  def refresh
    self.contents.clear
    draw_currency_value($game_party.gold, 4, 0, 120)
    draw_currency_value($game_variables[0001] , 4, 24, 120)
  end
end

#===============================================================================
# GAME_PARTY
#===============================================================================
class Game_Party < Game_Unit
    attr_reader   :gold2
  def initialize
    super
    @gold = 0
    @gold2 = 0
    @steps = 0
    @last_item_id = 0
    @last_actor_index = 0
    @last_target_index = 0
    @actors = []     
    @items = {}   
    @weapons = {} 
    @armors = {}   
  end

  def gain_gold(n)
    if $game_switches[GOLD]
      @gold = [[@gold + n, 0].max, 9999999].min
    else
      @gold2 = [[@gold2 + n, 0].max, 9999999].min
    end
  end
  def lose_gold(n)
    gain_gold(-n)
  end
end

#===============================================================================
# SCENE_MENU
#===============================================================================
class Scene_Menu < Scene_Base
  def start
    super
    create_menu_background
    create_command_window
    @gold_window = Window_Gold.new(0, 336)
    @status_window = Window_MenuStatus.new(161, 0)
  end
end

#===============================================================================
# SCENE_SHOP
#===============================================================================
class Scene_Shop < Scene_Base
  def start
    super
    create_menu_background
    create_command_window
    @help_window = Window_Help.new
    @gold_window = Window_Gold.new(384, 56)
    @dummy_window = Window_Base.new(0, 136, 544, 280)
    @buy_window = Window_ShopBuy.new(0, 136)
    @buy_window.active = false
    @buy_window.visible = false
    @buy_window.help_window = @help_window
    @sell_window = Window_ShopSell.new(0, 136, 544, 280)
    @sell_window.active = false
    @sell_window.visible = false
    @sell_window.help_window = @help_window
    @number_window = Window_ShopNumber.new(0, 136)
    @number_window.active = false
    @number_window.visible = false
    @status_window = Window_ShopStatus.new(304, 136)
    @status_window.visible = false
  end
end

#===============================================================================
# WINDOW_SHOPBUY
#===============================================================================
class Window_ShopBuy < Window_Selectable
  def initialize(x, y)
    super(x, y, 304, 280)
    @shop_goods = $game_temp.shop_goods
    refresh
    self.index = 0
  end
end

#===============================================================================
# WINDOW_NUMBER
#===============================================================================
class Window_ShopNumber < Window_Base
  def initialize(x, y)
    super(x, y, 304, 280)
    @item = nil
    @max = 1
    @price = 0
    @number = 1
  end
end

#===============================================================================
# KONIEC
#===============================================================================

#===============================================================================
# EDYCJA
#===============================================================================

module GoldIcon
  GoldIconIndex       = 205
  GoldIconIndex2      = 200
end
 
#===============================================================================
# KONIEC "EDYCJA"
#===============================================================================

#===============================================================================
# NIE RUSZ... NAPLUŁEM... xD
#===============================================================================
class Window_Base < Window
  alias customgoldicon draw_currency_value
  alias added_gold_icon draw_currency_value
  def draw_currency_value(value, x, y, width)   
    customgoldicon(value , x, y, width)
    draw_icon(GoldIcon::GoldIconIndex , 4 , 0)
    draw_icon(GoldIcon::GoldIconIndex2 , 4 , 24)
  end
end


Mój pierwszy zmodyfikowany na super rzecz skrypt xD

Agumon - Sob 02 Paź, 2010 21:53

A możesz mi wytłumaczy jak się go używa bo w instrukcji widzę że tam chodzi o przełączniki a ja chciałem zmienne.
CreeperCrisis - Nie 03 Paź, 2010 10:34

No i tak działa. -.-
Kod:
    draw_currency_value($game_variables[0001] , 4, 24, 120)

$game_variables[0001] - to nasza zmienna -.-
Zmienna numer 1 to nasza waluta.

EDIT: Będziesz coś kupować w sklepie tą walutą, czy ona będzie jako jakąś walutę questową. :?:

Agumon - Nie 03 Paź, 2010 12:42

CRISIS CORE napisał/a:
Będziesz coś kupować w sklepie tą walutą, czy ona będzie jako jakąś walutę questową. :?:

Jako walutę questową.
A jak zmienię w skrypcie na
Kod:
draw_currency_value($game_variables[0015] , 4, 24, 120)

To będzie na zmienną 15 tak??? bo zależy mi na tym bo zmienne od 1 - 14 mam już zajęte.

CreeperCrisis - Nie 03 Paź, 2010 17:04

Tak. Zmieni się na zmienną 15. Waluta Questowa to dobrze ponieważ nie można przez nią nic kupować, już próbowałem to zrobić, ale nie działało. :-?
Agumon - Nie 03 Paź, 2010 17:13

CRISIS CORE napisał/a:
Waluta Questowa to dobrze ponieważ nie można przez nią nic kupować, już próbowałem to zrobić, ale nie działało.


Dobra spoko. Ale dzięki za skrypt. Bardzo mi pomogłeś. Leci pomógł.


Powered by phpBB modified by Przemo © 2003 phpBB Group