Ogłoszenie 

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


Administracja Forum


Poprzedni temat «» Następny temat
Skille z itemów
Autor Wiadomość
Teyan 




Preferowany:
RPG Maker VX

Pomógł: 1 raz
Dołączył: 05 Lis 2009
Posty: 48
Wysłany: Pią 01 Sty, 2010 01:00
Skille z itemów
~ Skille z itemów ~

Krótki opis
potrzebowałem ten skrypt i byłem pewien, że go tu widziałem, ale nie, wsiąkł. Dlatego pobrałem angielkojęzyczny i przetłumaczyłem. Dleczego go tu umieszczam? Nie mam pojęcia.
Dzięki niemu możecie ustawić, że postać dostanie skilla, jeżeli ma dany przedmiot lub założony dany equip (mi się ten skrypt przyda do amunicji, nie pytajcie dlaczego).

Autor skryptu
modern algebra

Tłumaczenie
Ja

Kompatybilność
Tylko RPG Maker VX

Skrypt
Spoiler:

Kod:
#=====================================================
#  Tytuł: Skille z itemów
#  Oryginalny Tytuł: Skill Teaching Equipment & Items
#  Version 2.0
#  Autor: modern algebra (rmrk.net)
#  Data: 27 jenuary (cokolwiek to oznacza) 2008
#  Tłumaczenie: Teyan (www.ultimateam.pl)
#  Data tłumaczenia: 01.01.2010r.
#~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  INSTRUKCJA:
#    Wklej ten skrypt nad Main.
#
#    Wpisz poniższy kod w Note/Notatkach przedmiotu lub ekwipunku
#
#        \ls[skill_id, level_min]
#
#        Gdzie:
#        skill_id to numer skilla, którego postać się nauczy,
#        level_min to wymagany poziom danej postaci - nieobowiązkowy tzn:
#        nie musimy pisać: np: \ls[2, 0] by bohater otrzymał skill natychmist po założeniu danego przedmiotu
#        wystarczy, że napiszemy np: \ls[2]
#   
#
#==================NIE GRZEB PONIŻEJ!!!!!!!!!!!!!!!!!===========
#==================Ja nawet nie tłumaczyłem.====================
# ** RPG::BaseItem
#~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#    Summary of Changes:
#      new method - skill_ids
#=========================================================

class RPG::BaseItem
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Skill IDs
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  def skill_ids
    # Only works for Item, Weapon, and Armor
    return if self.class == RPG::Skill
    learn_skills = []
    # Dissect Note
    text = self.note.dup
    while text[/\\ls\[(\w+),*\s*(\d*?)\]/i] != nil
      text.sub! (/\\ls\[(\w+),*\s*(\d*?)\]/i) { '' }
      learn_skills.push ([$1.to_i, $2.to_i])
    end
    return learn_skills
  end
end 

#=========================================================
# ** Game_Actor
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Summary of Changes:
#    aliased methods - change_equip, setup, level_up
#=========================================================

class Game_Actor < Game_Battler
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Change Equipment
  #     equip_type : type of equipment
  #     id    : weapon or armor ID (If 0, remove equipment)
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_skill_teaching_items_equipment_change change_equip
  def change_equip (equip_type, item, test = false)
    unless test
      last_item = equips[equip_type]
      # Forget the skills from what was previously equipped
      skill_ids = last_item.nil? ? [] : last_item.skill_ids
      skill_ids.each { |skill_id|
        forget_skill (skill_id[0]) if @unnatural_skills.include? (skill_id[0])
        @unnatural_skills.delete (skill_id[0])
      }
    end
    # Run original method
    ma_skill_teaching_items_equipment_change (equip_type, item, test)
    unless test
      last_item = equips[equip_type]
      # Learn the skills from current_equipment
      skill_ids = last_item.nil? ? [] : last_item.skill_ids
      skill_ids.each { |skill_id|
        unless skill_learn? ($data_skills[skill_id[0]]) || self.level < skill_id[1]
          learn_skill (skill_id[0])
          @unnatural_skills.push (skill_id[0])
        end
      }
    end
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Setup
  #     actor_id : actor ID
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_skill_teaching_items_actor_setup setup
  def setup (actor_id)
    @unnatural_skills = []
    # Run original method
    ma_skill_teaching_items_actor_setup (actor_id)
    for item in equips
      next if item.nil?
      item.skill_ids.each { |skill_id|
        next if skill_learn? ($data_skills[skill_id[0]]) || self.level < skill_id[1]
        @unnatural_skills.push (skill_id[0])
        learn_skill (skill_id[0])
      }
    end
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Level Up
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias modalg_skl_teacher_equip_actor_lvlup level_up
  def level_up
    modalg_skl_teacher_equip_actor_lvlup
    # Check Equipment and learn skills if not already learned
    equips.each { |item|
      next if item == nil
      item.skill_ids.each { |skill_id|
        unless skill_learn? ($data_skills[skill_id[0]]) || self.level < skill_id[1]
          learn_skill (skill_id[0])
          @unnatural_skills.push (skill_id[0])
        end
      }
    }
  end
end

#=========================================================
# ** Game_Battler (Skill Teaching modification)
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Summary of Changes:
#    aliased methods - item_test, item_effect
#=========================================================

class Game_Battler
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Item Test
  #      user : person using item
  #      item : the item being used
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_skill_teaching_items_test_item item_test
  def item_test (user, item)
    effective = ma_skill_teaching_items_test_item (user, item)
    if self.class != Game_Enemy
      item.skill_ids.each { |skill_id|
        effective |= !skill_learn? ($data_skills[skill_id[0]]) && self.level > skill_id[1]
      }
    end
    return effective
  end
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Application of Item Effects
  #     item : item
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_skill_teaching_items_effect_item item_effect
  def item_effect (user, item)
    # Run original method
    ma_skill_teaching_items_effect_item (user, item)
    item.skill_ids.each { |skill_id|
      if self.class != Game_Enemy && self.level > skill_id[1]
        @unnatural_skills.delete (skill_id[0])
        learn_skill (skill_id[0])
      end
    }
  end
end


Demo
Niepotrzebne

'Skrinszot'
Niepotrzebny.

Instrukcja
1. Wklejcie, z łaski swojej, skrypt nad "Main".
2. Reszta instrukcji znajduje się w treści tego @!%&%!@ skryptu
3. Nie zadawajcie więcej pytań.
4. Nie piszcie postów, bo zostaniecie oskarżeni o spam!
 
 
Itaki 




Preferowany:
RPG Maker VX

Ranga RM:
1 gra

Pomógł: 8 razy
Dołączył: 07 Maj 2010
Posty: 278
Skąd: z Arvorii.
Wysłany: Sro 20 Paź, 2010 16:52
A tegp sie nie da zrobić na typowych zdarzeniach??
________________________
Proponuje:

http://r9.fodey.com/2141/...37ef9c849.0.gif
http://grawbank.tk/959/dajcie_na_piwo
http://grawbank.tk/797/daj_dla_biedacka_ < tu musisz wcisnąć!



SIEMANO Gość
 
 
 
FireBlade 




Preferowany:
RPG Maker VX

Pomogła: 8 razy
Dołączyła: 04 Kwi 2010
Posty: 243
Skąd: Opole
Wysłany: Sob 23 Paź, 2010 10:32
Owszem , da się ale gratuluję Modern Algebra i Teyanowi zza stworzenie i tłumaczenie skryptu
bo wiem że to nie łatwe :|
Pozdrawiam.
________________________
"Nigdy się nie tłumacz, przyjaciele tego nie potrzebują a wrogowie i tak nie uwierzą.,"

"Oklaski są z łaski a brawa to wielka sprawa"

"Akcpetuję tylko wodę, mountain dew i coca colę zero..."

DeviantArt : http://divinekataroshie.deviantart.com/
 
 
 
cj2 




Preferowany:
RPG Maker VXAce

Ranga RM:
1 gra

Pomógł: 6 razy
Dołączył: 07 Mar 2010
Posty: 261
Skąd: Gliwice
Wysłany: Sob 23 Paź, 2010 20:10
A wg mnie łatwe jest tłumaczenie :-D tylko trzeba znaleźć skrypt
________________________
Porady dla twórców gier
Nie ma śniegu, a zgubiłem normalny avatar :I
 
 
alu675 



Dołączył: 24 Paź 2010
Posty: 7
Wysłany: Sro 27 Cze, 2012 14:19
Mam problem ze skryptem. Kiedy zakładam ekwipunek z umiejętnością, wyskakuje mi następujący komunikat:

Script 'UM do EQ' line 83: NoMethodError occurred.
undefinied method ' push' for nil:NilClass
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Sro 27 Cze, 2012 18:44
alu675, możesz wrzucić demo z błędem? np. na host www.mediafire.com ?
________________________


 
 
 
kolkav5 




Preferowany:
RPG Maker VX

Pomógł: 2 razy
Dołączył: 28 Gru 2011
Posty: 76
Wysłany: Czw 28 Cze, 2012 21:09
Prosty skrypt.
Lubie takie. :mrgreen:

Lecz nie lubie nad nimi siedzieć. 8.9/10 :brawa:

[ Komentarz dodany przez: Seivoth: Czw 28 Cze, 2012 21:13 ]
Twój post nic nie wnosi do tematu!
________________________
Jeśli pomogłem daj "Pomógł"

Bardzo proszę oceniajcie http://www.ultimateam.pl/viewtopic.php?t=9314

Znowu Powracam!
 
 
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