Og³oszenie 

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


Administracja Forum


Poprzedni temat «» Nastêpny temat
Ulepszanie broni
Autor Wiadomo¶æ
Shadow 




Preferowany:
RPG Maker VX

Pomóg³: 3 razy
Do³±czy³: 18 Lip 2011
Posty: 24
Sk±d: ÅšwinoujÅ›cie
Wys³any: Sro 25 Sty, 2012 10:40
Ulepszanie broni
~ Digioso Weapon Upgrades ~


Krótki opis:
Skrypt pozwala na ulepszanie przedmiotów. Przy każdym ulepszeniu zwiększa się atak. Skrypt oferuje również zmianę ikony,nazwy a nawet opisu broni.

Autor:
Digioso

Tłumaczenie:
Shadow

Skrypt:
Spoiler:

Kod:
=begin
Digioso Weapon Upgrades 1.3
Author:Digioso
Tłumaczył:Shadow
Czy chciałeś zawsze ulepszać broń?
Newest version available at: http://www.digioso.org/Digioso_weapons
=end

class Digioso_weapons
 
  def initialize
   
    # Instrukcja:
   
    # Ten skrypt pozwala na ulepszanie broni. Umieszcza aktualny poziom w opisie
    # broni i zwiÄ™ksza jej atak o podanÄ… wartość.
    #
    # UWAGA: To kompletnie zmienia broÅ„ . Ten system przeznaczony jest dla gier
    # które używajÄ… ograniczonej liczby broni (jak w Secret of Mana ). jeżeli
    # masz dwa  "Krótki Miecz" i jeden z nich ulepszysz wtedy obydwa miecze majÄ…
    # poziom 2. WiÄ™c jeżeli wrogowie upuszczajÄ… broÅ„ jak szaleni ten skrypt nie
    # jest dla ciebie.
   
    # Komendy:
    # $Digioso_weapons.add_level(Id broni) <- Ulepsza broÅ„
    # PrzykÅ‚ad: $Digioso_weapons.add_level(1) <- ulepsza o 1 poziom broÅ„ o ID 1

    # $Digioso_weapons.change_plus(Id broni, wartość) <- zmienia wartoÅ›c ataku
    # jakÄ… dostajesz za ulepszenie
    # PrzykÅ‚ad: $Digioso_weapons.change_plus(1, 10) <- doda 10 ataku po ulepszeniu
    # broni z Id 1
   
    # $Digioso_weapons.get_icon(Id broni) <- Ustawia bieżącÄ… ikonÄ™ broni w
    # zmiennej poniżej.
 
    # Aby zmienić ikonÄ™ broni należy w zdarzeniu wywoÅ‚ać skrypt:   
    # $Digioso_weapons.set_icon(Id broni,id ikony) <- ustawia ikonÄ™ broni na takÄ…
    # jakÄ… chcesz.
    # $Digioso_weapons.put_var(weapon_id) <- Ustawia bieżący poziom broni
    # w zmiennej poniżej.
    # Example: $Digioso.put_var(1) <- zmienna bÄ™dzie przechowywać poziom
    # proni z Id 1

    # Aby zmienić opis broni należy w zdarzeniu wywoÅ‚ać skrypt:   
    # $Digioso_weapons.set_description(Id broni, "opis") <- ZmieÅ„ opis
    # broni o wybranym Id
    # PrzykÅ‚ad: $Digioso_weapons.set_description(3, "Delivers the wrath of Digioso")
    # Zmienia opis broni z Id 3 na: Delivers the wrath of Digioso
   
    # Aby zmienić nazwÄ™ broni należy w zdarzeniu wywoÅ‚ać skrypt:
    # $Digioso_weapons.set_name(Id broni, "Nazwa...")
    # PrzykÅ‚ad: $Digioso_weapons.set_name(1, "Digiosos sword of ultimate doom")
    # Zmienia nazwÄ™ broni z Id 1 na "Digiosos sword of ultimate doom".
   
    @weapons = {   #NIE RUSZAJ TEGO
   
    # Zmienna jakÄ… używa skrypt (Standardowo 1)
      "var"      => 1,
   
    # WartoÅ›c o jakÄ… wzroÅ›nie atak po ulepszeniu
      "def_plus" => 5,
     
    # Ustaw procent na true jeżeli wartość ataku ma zwiÄ™kszać siÄ™ procentowo.
    # Atak zwiÄ™ksza siÄ™ caÅ‚oÅ›ciowo , jeżeli z obliczeÅ„ wychodzi 1,9 to broÅ„ nadal
    # bÄ™dzie miaÅ‚a 1 ataku.
      "percent" => false,
     
    # Aby pokazać poziom broni skrypt umieszcza za opisem broni tekst
    # Np. Twój miecz ma opis  "Zdobiony miecz"
    # Wtedy skrypt zmieni to tak: "Zdobiony miecz (Level 2)
    # NastÄ™pnym razem skrypt umieÅ›ci "Zdobiony miecz (Level 3)
    # i tak dalej
      "description" => "Level",
     
    # use_lvl dodaje wskaźnik poziom w opisie przedmiotu,
    # jeżelu ustawisz false poziom nie bÄ™dzie wyÅ›wietlany.
      "use_lvl" => true,
     
    # W tym miejscu możesz ustawić o  ile wzroÅ›nie atak po ulepszeniu.
    # SkÅ‚adnia: Id broni => wartość ataku
    # PrzykÅ‚ad: 1 => 5
    # Doda 5 (lub 5%) do ataku broni o ID  1.
    # And of course you can change/add these values with the change_plus command
    # as described above.
    # Nie zapomnij dać przecinka na koÅ„cu każdego rzÄ™du (z wyjÄ…tkiem ostatniego)
    # jeżeli chcesz dodać wiele broni.
    1 =>   5,
    2 =>  10
     
#---KONIEC KONFIGURACJI! NIE EDYTUJ KODU PONIŻEJ CHYBA ŻE WIESZ CO ROBISZ!---
    }
   
    @weapon_level = Hash.new
   
  end
 

  def change_plus(weapon_id, value)
    @weapons[weapon_id] = value
  end
 

  def add_level(weapon_id)

    if($data_weapons[weapon_id].description =~ /^(.*?)\(#{@weapons["description"]} (\d+)\)(.*?)$/)
      description1 = $1
      currentlevel = $2.to_i
      description2 = $3
      if(@weapon_level.has_key?(weapon_id))
        @weapon_level[weapon_id] += 1
      else
        @weapon_level[weapon_id]  = currentlevel + 1
      end
      $data_weapons[weapon_id].description  = "#{description1}(#{@weapons["description"]} #{@weapon_level[weapon_id]}#{description2})"
    else
      if(@weapons["use_lvl"])
        $data_weapons[weapon_id].description += " (#{@weapons["description"]} 2)"
      end
      if(@weapon_level.has_key?(weapon_id))
        @weapon_level[weapon_id] += 1
      else
        @weapon_level[weapon_id]  = 2
      end
    end
    if(@weapons.has_key?(weapon_id))
      if(@weapons["percent"])
        $data_weapons[weapon_id].atk += ($data_weapons[weapon_id].atk * @weapons[weapon_id]) / 100
      else
        $data_weapons[weapon_id].atk += @weapons[weapon_id]
      end
    else
      if(@weapons["percent"])
        $data_weapons[weapon_id].atk += ($data_weapons[weapon_id].atk * @weapons["def_plus"]) / 100
      else
        $data_weapons[weapon_id].atk += @weapons["def_plus"]
      end
    end
  end
 
  def set_description(weapon_id, description)
    description.gsub!("\n", "")
    if($data_weapons[weapon_id].description =~ /^.*?\(#{@weapons["description"]} (\d+)\)(.*?)$/)
      $data_weapons[weapon_id].description  = "#{description}(#{@weapons["description"]} #{$1}#{$2})"
    else
      if(@weapons["use_lvl"])
        $data_weapons[weapon_id].description = "#{description} (#{@weapons["description"]} 1)"
      else
        $data_weapons[weapon_id].description = description
      end
    end
  end
 
  def get_icon(weapon_id)
    $game_variables[@weapons["var"]] = $data_weapons[weapon_id].icon_index
  end
 
  def set_icon(weapon_id, icon)
    $data_weapons[weapon_id].icon_index = icon.to_i
  end
 
  def set_name(weapon_id, name)
    $data_weapons[weapon_id].name = name.gsub("\n", "")
  end
 
  def put_var(weapon_id)
    if(@weapon_level.has_key?(weapon_id))
      $game_variables[@weapons["var"]] = @weapon_level[weapon_id]
    elsif($data_weapons[weapon_id].description =~ /^.*?\(#{@weapons["description"]} (\d+)\)/)
      $game_variables[@weapons["var"]] = $1
    else
      $game_variables[@weapons["var"]] = 1
    end
  end
 
end

class Scene_File < Scene_Base
  alias digioso_write_save_data_digioso_weapons write_save_data
  def write_save_data(file)
    digioso_write_save_data_digioso_weapons(file)
    Marshal.dump($Digioso_weapons, file)
    Marshal.dump($data_weapons, file)
  end


  alias digioso_read_save_data_digioso_weapons read_save_data
  def read_save_data(file)
    digioso_read_save_data_digioso_weapons(file)
    $Digioso_weapons = Marshal.load(file)
    $data_weapons = Marshal.load(file)
  end
end

$Digioso_weapons = Digioso_weapons.new


Screeny:
Spoiler:



Demo:



Dodatkowe informacje:
Aby umieścić skrypt wklej go do Edytora Skryptów nad Main.
________________________
Odnajdź siebie, a znajdziesz prawdziwą siłę do walki z przeciwnościami losu.
 
 
poko67 




Preferowany:
RPG Maker VX

Pomóg³: 6 razy
Do³±czy³: 21 Lis 2009
Posty: 141
Wys³any: Sro 25 Sty, 2012 10:56
Skrypt nawet...ale mało rozbudowany ;D ale na pewno znajdą się kreatywne osoby które z tego czegoś zrobią cudo ;D
 
 
AdolfSolaris 



Preferowany:
RPG Maker VX

Do³±czy³: 04 Mar 2012
Posty: 1
Wys³any: Nie 04 Mar, 2012 10:49
Hmmmm a jak by to ulepszać? Jestem w tym nowy a to mój 1 post. To trzeba zrobić u jakiegoś npc event w ustawieniach????
 
 
Stefan 



Preferowany:
RPG Maker VX

Do³±czy³: 24 Lut 2012
Posty: 22
Sk±d: z Polski
Wys³any: Czw 08 Mar, 2012 22:02
AdolfSolaris napisa³/a:
Hmmmm a jak by to ulepszać? Jestem w tym nowy a to mój 1 post. To trzeba zrobić u jakiegoś npc event w ustawieniach????

Wszystko jest w demie ;)
# Komendy:
# $Digioso_weapons.add_level(Id broni) <- Ulepsza broń
# Przykład: $Digioso_weapons.add_level(1) <- ulepsza o 1 poziom broń o ID 1

# $Digioso_weapons.change_plus(Id broni, wartość) <- zmienia wartośc ataku
# jakÄ… dostajesz za ulepszenie
# Przykład: $Digioso_weapons.change_plus(1, 10) <- doda 10 ataku po ulepszeniu
# broni z Id 1

# $Digioso_weapons.get_icon(Id broni) <- Ustawia bieżącą ikonę broni w
# zmiennej poniżej.

# Aby zmienić ikonę broni należy w zdarzeniu wywołać skrypt:
# $Digioso_weapons.set_icon(Id broni,id ikony) <- ustawia ikonÄ™ broni na takÄ…
# jakÄ… chcesz.
# $Digioso_weapons.put_var(weapon_id) <- Ustawia bieżący poziom broni
# w zmiennej poniżej.
# Example: $Digioso.put_var(1) <- zmienna będzie przechowywać poziom
# proni z Id 1

# Aby zmienić opis broni należy w zdarzeniu wywołać skrypt:
# $Digioso_weapons.set_description(Id broni, "opis") <- Zmień opis
# broni o wybranym Id
# Przykład: $Digioso_weapons.set_description(3, "Delivers the wrath of Digioso")
# Zmienia opis broni z Id 3 na: Delivers the wrath of Digioso

# Aby zmienić nazwę broni należy w zdarzeniu wywołać skrypt:
# $Digioso_weapons.set_name(Id broni, "Nazwa...")
# Przykład: $Digioso_weapons.set_name(1, "Digiosos sword of ultimate doom")
# Zmienia nazwÄ™ broni z Id 1 na "Digiosos sword of ultimate doom".
A co do skryptu, jest bardzo fajny tylko, że przydaloby sie jeszcze ulepszanie pancerza i pozostalych czesci wyposażenia :lol2:
 
 
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