Ogłoszenie 

Uwaga! To forum jest w trybie offline.
Wszelką pomoc uzyskasz pod adresem
forum.ultimateam.pl


Administracja Forum


Poprzedni temat «» Następny temat
Ceny kontrolowane
Autor Wiadomość
Teyan 




Preferowany:
RPG Maker VX

Pomógł: 1 raz
Dołączył: 05 Lis 2009
Posty: 48
Wysłany: Sro 23 Gru, 2009 23:26
Ceny kontrolowane
:-D Cześć, oto mój drugi skrypt (pierwszy nie miał zastosowania w praktyce).
Sam go napisałem (właściwie to dodałem kilka słów do już istniejących klas), ale zawsze coś!!!
Potraktujcie go jako prezent na święta.
DZIAŁANIE:
Możemy w dowolnym momencie gry zmniejszać/zwiększać ceny kupna/sprzedaży przedmiotów o np: 10% lub 1000%.

INSTRUKCJA:
W skrypcie.

SCREENY:
Niepotrzebne.

Oto to:
Spoiler:

Kod:
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/Tytuł: Ceny Kontrolowane.............................._/
#_/Autor: Ja!!! (tj Marcin z www.ultimateam.pl)..._/
#_/Data: 23 grudzień 2009r............................._/
#_/Wersja: 1.0.............................................._/
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#~~~~~~~~~~~INSTRUKCJA~~~~~~~~~~~~~~~~~~
#Ten skrypt pozwoli wam zmieniać ceny wszystkich przedmiotów jednocześnie
#Do zmiany cen służą skrypty:

#Aby zmienić cene kupna trzeba wywołać skrypty:
#   Kup::Liczba2 = 1
# a potem:
#   Kup::Liczba1 = x
#mnoży cenę przedmiotu o x (zapłacimy więcej kasy)
#lub
#   Kup::Liczba1 = 1
#a potem:
#   Kup::Liczba2 = x
#dzieli cenę przedmiotu o x (zapłacimy mniej kasy)
#
#Aby zmienić cene sprzedaży trzeba wywołać skrypty:
#   Sprzedaj::Liczba2 = 1
#a potem:
#   Sprzedaj::Liczba1 = x
#mnoży cenę przedmiotu o x (dostaniemy więcej kasy)
#lub:
#   Sprzedaj::Liczba1 = 1
#a potem
#   Sprzedaj::Liczba2 = x
#dzieli cenę przedmiotu o x (dostaniemy mniej kasy)
#~~~~~~~~WAŻNE~~~~~~
#Liczby "x" muszą być całkowite i nieujemne.
#Aby zrobić tak jak było (czyli za sprzedanie przedmiotu dostajemy połowe jego normalnej wartości)
#musimy po kolei wywołać skrypty:
#Sprzedaj::Liczba1 = 1
#Sprzedaj::Liczba2 = 2
#Kup::Liczba1 = 1
#Kup::Liczba2 = 1
#Ten skrypt posiada już te ustawienia!! (napisałem o tym, gdybyście w swojej grze je zmienili i chcieli
#powrócić do starych ustawień).
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#~~~~~~~~~~~~RADY~~~~~~~~~~~~
#jeżeli chcecie, by ceny przedmiotów wzrosły o np: 10%
#to przemnóćcie te ceny przez 11 (Kup::Liczba1 = 11) a potem podzielcie przez 10 (Kup:Liczba2 = 10)
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


module Kup
  Liczba1 = 1 #mnoży cenę kupna (zapłacimy więcej)
  Liczba2 = 1 #dzieli cenę kupna (zapłacimy mniej)
end
module Sprzedaj
  Liczba1 = 3 #mnoży cenę sprzedania (dostaniemy więcej)
  Liczba2 = 2 #dzieli cenę sprzedania (dostaniemy mniej)
end
class Scene_Shop < Scene_Base
  def update_buy_selection
    @status_window.item = @buy_window.item
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command_window.active = true
      @dummy_window.visible = true
      @buy_window.active = false
      @buy_window.visible = false
      @status_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
      return
    end
    if Input.trigger?(Input::C)
      @item = @buy_window.item
      number = $game_party.item_number(@item)
      if @item == nil or (@item.price * Kup::Liczba1 / Kup::Liczba2) > $game_party.gold or number == 99
        Sound.play_buzzer
      else
        Sound.play_decision
        max = @item.price == 0 ? 99 : $game_party.gold / (@item.price * Kup::Liczba1 / Kup::Liczba2)
        max = [max, 99 - number].min
        @buy_window.active = false
        @buy_window.visible = false
        @number_window.set(@item, max, @item.price * Kup::Liczba1 / Kup::Liczba2)
        @number_window.active = true
        @number_window.visible = true
      end
    end
  end
  def update_sell_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      @command_window.active = true
      @dummy_window.visible = true
      @sell_window.active = false
      @sell_window.visible = false
      @status_window.item = nil
      @help_window.set_text("")
    elsif Input.trigger?(Input::C)
      @item = @sell_window.item
      @status_window.item = @item
      if @item == nil or @item.price == 0
        Sound.play_buzzer
      else
        Sound.play_decision
        max = $game_party.item_number(@item)
        @sell_window.active = false
        @sell_window.visible = false
        @number_window.set(@item, max, @item.price * Sprzedaj::Liczba1 / Sprzedaj::Liczba2)
        @number_window.active = true
        @number_window.visible = true
        @status_window.visible = true
      end
    end
  end
  def decide_number_input
    Sound.play_shop
    @number_window.active = false
    @number_window.visible = false
    case @command_window.index
    when 0  # Buy
      $game_party.lose_gold(@number_window.number * @item.price * Kup::Liczba1 / Kup::Liczba2)
      $game_party.gain_item(@item, @number_window.number)
      @gold_window.refresh
      @buy_window.refresh
      @status_window.refresh
      @buy_window.active = true
      @buy_window.visible = true
    when 1  # sell
      $game_party.gain_gold(@number_window.number * (@item.price * Sprzedaj::Liczba1 / Sprzedaj::Liczba2))
      $game_party.lose_item(@item, @number_window.number)
      @gold_window.refresh
      @sell_window.refresh
      @status_window.refresh
      @sell_window.active = true
      @sell_window.visible = true
      @status_window.visible = false
    end
  end
end
class Window_ShopBuy < Window_Selectable
    def draw_item(index)
    item = @data[index]
    number = $game_party.item_number(item)
    enabled = (item.price * Kup::Liczba1 / Kup::Liczba2 <= $game_party.gold and number < 99)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    draw_item_name(item, rect.x, rect.y, enabled)
    rect.width -= 4
    self.contents.draw_text(rect, item.price * Kup::Liczba1 / Kup::Liczba2, 2)
  end
end

 
 
Deegi 



Preferowany:
RPG Maker VX

Dołączył: 15 Lis 2009
Posty: 29
Wysłany: Sro 23 Gru, 2009 23:29
Czy nie to samo serwowałeś wcześniej?
http://www.ultimateam.pl/viewtopic.php?t=2155
 
 
 
Teyan 




Preferowany:
RPG Maker VX

Pomógł: 1 raz
Dołączył: 05 Lis 2009
Posty: 48
Wysłany: Sro 23 Gru, 2009 23:37
Nie, różnice są duże, oto kilka:
1. Ten skrypt sam napisałem (dzisiaj), tamten tylko przetłumaczyłem (jakiś czas temu).
2. Tamten skrypt zmieniał cenę jednego przedmiotu, ten zmienia (dzieli lub mnoży) cenę wszystkich.
3. W tym skrypcie możemy ustawić, że cena sprzedaży przedmiotu będzie równa cenie nabycia, lub nawet wyższa!!!! W tamtym nie!!!
I jeszcze kilka różnic by się znalazło...

Ogólnie, moim zdaniem, ten skrypt jest bardziej praktyczny.

[ Dodano: Czw 24 Gru, 2009 02:25 ]
I bardzo bardzo prosty!!!!
Męczyłem się z nim dwa dni, a teraz, gdy już wiem co i jak, napisanie tego skryptu od nowa zajęło by mi może 10 minut!!!!!!!!!!!!!
Chciałem wam po prostu dać jakiś prezent :mrgreen:
 
 
Lord Voldemort 




Preferowany:
RPG Maker XP

Dołączył: 03 Sty 2011
Posty: 32
Skąd: Polska
Wysłany: Sro 09 Mar, 2011 20:33
Potrzebuję identycznego, tylko, że do XP, mógłby ktoś przerobić?
________________________
89% graczy uważa, że najważniejsza jest grafika.
Jeśli należysz do pozostałych 11% wklej to do swojego podpisu.
____________________________________________________
Jam jest Lord Voldemort!
 
 
 
MrBoomGood 




Preferowany:
RPG Maker VX

Pomógł: 3 razy
Dołączył: 07 Kwi 2011
Posty: 292
Skąd: Katowice
Wysłany: Wto 03 Maj, 2011 15:30
Działa wszystko! Przyda mi się :)
 
 
 
matiusz 



Dołączył: 27 Kwi 2011
Posty: 6
Wysłany: Pią 24 Cze, 2011 15:16
Da się używać zmiennych w tym skrypcie? :?:
 
 
Angius 

Nie wkurzać



Preferowany:
RPG Maker VX

Pomógł: 104 razy
Dołączył: 30 Paź 2010
Posty: 1276
Skąd: wROCK
Wysłany: Pią 24 Cze, 2011 15:59
A po co ci zmienne? o.O
________________________
"Na trolla pewne są tylko dwie pewne metody, jedna samopowtarzalna i druga, wymagająca przeładowania ręcznego."


 
 
matiusz 



Dołączył: 27 Kwi 2011
Posty: 6
Wysłany: Pią 24 Cze, 2011 18:51
Próbuję zrobić zmienne ceny np. raz kupujesz coś za 100, raz za 90 a raz za 120
 
 
Angius 

Nie wkurzać



Preferowany:
RPG Maker VX

Pomógł: 104 razy
Dołączył: 30 Paź 2010
Posty: 1276
Skąd: wROCK
Wysłany: Pią 24 Cze, 2011 18:54
Ten skrypt zmniejsza/zwiększa cenę o x%. Jeśli chcesz czegoś, co pozwoliłoby ci zmieniać cenę dowolnie, wykorzystaj ten skrypt: http://www.ultimateam.pl/viewtopic.php?t=2155
________________________
"Na trolla pewne są tylko dwie pewne metody, jedna samopowtarzalna i druga, wymagająca przeładowania ręcznego."


 
 
Kyovu 




Preferowany:
RPG Maker VX

Dołączył: 02 Lis 2012
Posty: 23
Wysłany: Sob 03 Lis, 2012 11:00
Można to połączyć z przełącznikami i np jak w assasin creed 2 to jak ulepszysz kowala dostajesz np 5% rabatu.Mi się nie przyda ale daje 3/5 :-|
________________________
Dołącz do koto-makerowców !
 
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group | Template Klam by Ayene