Ogłoszenie 

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


Administracja Forum


Poprzedni temat «» Następny temat
Dodatkowe przedmioty za potwory XP
Autor Wiadomość
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Pon 06 Wrz, 2010 06:27
Dodatkowe przedmioty za potwory XP
~ Dodatkowe przedmioty za potwory XP ~

Krótki opis
Jak wiadomo Baza Danych RMXP pozwala na przyporządkowanie tylko jednego przedmiotu jednemu potworowi. Wobec czego skrypt umożliwia ustawienie przedmiotów dodatkowych. Lepiej jednak nie przesadzać z ich ilością (maksymalna ilość to 6). Wartość można zmienić, edytując linijkę:
Kod:
treasures = treasures[0..5]


Zalecane dokładne testy kompatybilności z innymi (niż domyślny) systemami walki.

Autor skryptu
Ayene [yurika@o2.pl]

Kompatybilność
Tylko XP. Może mieć problemy z kompatybilnością z innymi systemami walki, gdyż nadpisuje całkowicie definicję 'start_phase5'.

Skrypt
Spoiler:

Kod:
#===================================================================
# Dodatkowe przedmioty za potwory XP
# by Ayene
# 06.09.2010 ver 1.0
# www.ultimateam.pl
#===================================================================

module Ayene
  ITEM = {# ID potwora => [%, id przedmiotu],[%, id przedmiotu], itd.]
  1 => [[100, 2],[100, 23],[100, 23], ],
  2 => [[100, 3],[100, 23]],
  }
  WEAPON = {# ID potwora => [%, id broni],[%, id broni], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  ARMOR = {# ID potwora => [%, id pancerza],[%, id pancerza], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  # Maksymalna ilość przedmiotów to 6.   
end

class Scene_Battle
  def start_phase5
    @phase = 5
    $game_system.me_play($game_system.battle_end_me)
    $game_system.bgm_play($game_temp.map_bgm)
    exp = 0
    gold = 0
    treasures = []
    for enemy in $game_troop.enemies
      unless enemy.hidden
        exp += enemy.exp
        gold += enemy.gold
        if rand(100) < enemy.treasure_prob
          if enemy.item_id > 0
            treasures.push($data_items[enemy.item_id])           
          end
          if enemy.weapon_id > 0
            treasures.push($data_weapons[enemy.weapon_id])
          end
          if enemy.armor_id > 0
            treasures.push($data_armors[enemy.armor_id])
          end
        end   
        if Ayene::ITEM.include?(enemy.id)
          for i in 0..Ayene::ITEM[enemy.id].size-1
            if rand(100) < Ayene::ITEM[enemy.id][i][0]
              treasures.push($data_items[Ayene::ITEM[enemy.id][i][1]])
            end
          end
        end
        if Ayene::WEAPON.include?(enemy.id)
          for i in 0..Ayene::WEAPON[enemy.id].size-1
            if rand(100) < Ayene::WEAPON[enemy.id][i][0]
              treasures.push($data_weapons[Ayene::WEAPON[enemy.id][i][1]])
            end
          end
        end
        if Ayene::ARMOR.include?(enemy.id)
          for i in 0..Ayene::ARMOR[enemy.id].size-1
            if rand(100) < Ayene::ARMOR[enemy.id][i][0]
              treasures.push($data_armors[Ayene::ARMOR[enemy.id][i][1]])
            end
          end
        end
      end     
    end
    treasures = treasures[0..5]
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      if actor.cant_get_exp? == false
        last_level = actor.level
        actor.exp += exp
        if actor.level > last_level
          @status_window.level_up(i)
        end
      end
    end
    $game_party.gain_gold(gold)
    for item in treasures
      case item
      when RPG::Item
        $game_party.gain_item(item.id, 1)
      when RPG::Weapon
        $game_party.gain_weapon(item.id, 1)
      when RPG::Armor
        $game_party.gain_armor(item.id, 1)
      end
    end
    @result_window = Window_BattleResult.new(exp, gold, treasures)
    @phase5_wait_count = 100
  end
end


Demo
niepotrzebne

Screenshot
Spoiler:



Instrukcja
1. Wklej skrypt nad "Main" w Edytorze Skryptu.
2. Reszta instrukcji znajduje się w treści skryptu.

Piszcie w razie problemów.
________________________


 
 
 
R.I.P. 




Preferowany:
RPG Maker XP

Pomógł: 9 razy
Dołączył: 28 Mar 2010
Posty: 173
Skąd: Warszawa
Wysłany: Pon 06 Wrz, 2010 11:43
No dobra, a te "przedmioty", to dostaje się losowe czy co?, bo nie rozumiem... :->
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Pon 06 Wrz, 2010 11:47
Kod:
module Ayene
  ITEM = {# ID potwora => [%, id przedmiotu],[%, id przedmiotu], itd.]
  1 => [[100, 2],[100, 23],[100, 23], ],
  2 => [[100, 3],[100, 23]],
  }
  WEAPON = {# ID potwora => [%, id broni],[%, id broni], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  ARMOR = {# ID potwora => [%, id pancerza],[%, id pancerza], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  # Maksymalna ilość przedmiotów to 6.   
end

Przykładowo:
# ID potwora => [%, id broni],[%, id broni], itd.]
gdzie % to szansa 1~100%
id broni to ID broni w bazie danych.
________________________


 
 
 
R.I.P. 




Preferowany:
RPG Maker XP

Pomógł: 9 razy
Dołączył: 28 Mar 2010
Posty: 173
Skąd: Warszawa
Wysłany: Pon 06 Wrz, 2010 12:27
Ayene napisał/a:
Kod:
module Ayene
  ITEM = {# ID potwora => [%, id przedmiotu],[%, id przedmiotu], itd.]
  1 => [[100, 2],[100, 23],[100, 23], ],
  2 => [[100, 3],[100, 23]],
  }
  WEAPON = {# ID potwora => [%, id broni],[%, id broni], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  ARMOR = {# ID potwora => [%, id pancerza],[%, id pancerza], itd.]
  1 => [[100, 2],[100, 23]],
  2 => [[100, 3],[100, 23]],
  }
  # Maksymalna ilość przedmiotów to 6.   
end

Przykładowo:
# ID potwora => [%, id broni],[%, id broni], itd.]
gdzie % to szansa 1~100%
id broni to ID broni w bazie danych.


Echh, zaraz się popłacze, nie wiem co ci anglicy robią a polacy że Anglików skrypty działają od razu na Polskim RM :-) , kurcze czemu!?!, szkoda że nie działa na Polaku, przyokazji żeby nie było zbędnych pytań a mi nie działa, więc jak masz Polskiego RM to ci nie zadziała.... :mrgreen:
 
 
kamil1116 



Preferowany:
RPG Maker XP

Dołączył: 31 Lip 2010
Posty: 6
Wysłany: Pon 06 Wrz, 2010 15:36
ayen mógła byś zrobić to na pl wersje prosze :lol:
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Sro 08 Wrz, 2010 05:52
Żeby nie było... specjalnie pofatygowałam się i sprawdziłam tę waszą PL (choć nie powinnam) i nadal nie wiem, co wam nie chodzi. Po prostu nie czytacie konfiguracji:

Spoiler:

________________________


 
 
 
kamil1116 



Preferowany:
RPG Maker XP

Dołączył: 31 Lip 2010
Posty: 6
Wysłany: Sro 08 Wrz, 2010 14:14
dobra ok nie działa ale dzięki za fatyge

[ Dodano: Sro 08 Wrz, 2010 16:19 ]
przepraszam wszystko idzie thx
 
 
Czeliosss 



Ranga RM:
1 gra

Pomógł: 49 razy
Dołączył: 02 Lis 2009
Posty: 661
Skąd: Wa-wa
Wysłany: Sro 08 Wrz, 2010 17:14
Skrypt bardzo przydatny. Pewnie go użyję.
________________________
...Amelanduil & FireBlade words will be remembered...
...Amelanduil & FireBlade acts will be remembered...
...Amelanduil & FireBlade never gonna die...

Nie pisać, bo nie odpiszę.
 
 
R.I.P. 




Preferowany:
RPG Maker XP

Pomógł: 9 razy
Dołączył: 28 Mar 2010
Posty: 173
Skąd: Warszawa
Wysłany: Nie 12 Wrz, 2010 15:06
Cytat:
Żeby nie było... specjalnie pofatygowałam się i sprawdziłam tę waszą PL (choć nie powinnam) i nadal nie wiem, co wam nie chodzi. Po prostu nie czytacie konfiguracji:


To coś u mnie nie gra, dzięki za sprawdzenie...

Cytat:
Skrypt bardzo przydatny. Pewnie go użyję.


Nie "Pewnie" tylko oczywiście że go użyjesz.
 
 
HellKiller 



Preferowany:
RPG Maker XP

Dołączył: 10 Kwi 2010
Posty: 11
Wysłany: Pon 13 Wrz, 2010 16:45
Muszę powiedzieć że ci RGSS coraz lepiej, choć twoje skrypty są dość łatwe :P.
Podoba mi się to ,że robisz te skrypty dla innych a nie trzymasz je dla siebie.
Ja tak nie potrafię ja mam jakieś 20 w grze (może więcej) ,które nikomu nie udostępnie i mam jeszcze z 30 których nie używam a jakoś nie potrafię się dzielić :D.

Skrypt zrobiłem troszkę inaczej, ale twój pomysł jest dobry, ale trzeba dla każdego "rodzaju przedmiotu" robić id. Ja zrobiłem tak:

Dodatkowy_loot = {1 = [[item.id,item.id],[weapon.id,weapon.id],[armor.id,armor.id]]}

Co jest moim zdaniem prostszym sposobem.

Polecam skrypt i pozdrawiam HellKiller :evil: .
 
 
Tekjumen 




Preferowany:
RPG Maker XP

Pomógł: 2 razy
Dołączył: 27 Lis 2010
Posty: 14
Wysłany: Wto 30 Lis, 2010 20:59
Fajny skrypt, przyda się ^^ bo będzie w mojej gierce :pp
 
 
 
The Big Master 




Preferowany:
RPG Maker XP

Pomógł: 6 razy
Dołączył: 19 Gru 2012
Posty: 81
Skąd: Masz taki nr. IQ ?
Wysłany: Sob 22 Gru, 2012 09:13
Siemka mam polskiego RPG Makera Xp i nie wiem które to te ID broni? Wiem o co chodzi ale żadnej linijki typu "ID:2313123", czy to chodzi o nazwe Ico?
________________________
Siema

Gość, Jeżeli ci Pomogłem, możesz mi dać .
_______________________________________________________________
Niestety, padł mi komp z Projektami, więc przez pewien czas niestety nici z Projektów :C
 
 
 
dere 



Dołączył: 17 Lut 2013
Posty: 1
Wysłany: Nie 17 Lut, 2013 08:22
:jeeej: :krasnolud: :elf: :paladyn: :tonberry: :ork: :dragonhead: :nara: dziękuje :przytul:
 
 
Nex 




Preferowany:
RPG Maker XP

Pomógł: 15 razy
Dołączył: 27 Paź 2012
Posty: 145
Wysłany: Nie 17 Lut, 2013 12:21
GuGuś
Tu chodzi o takie ID że jak w bazie danych masz spis np wszystkich broni to po lewej masz takie coś
001:Miecz z brązu
002:Miecz z żelaza
i chodzi o to 001 lub 002 albo 043 a polski Rm nic tu nie zmienia

dere nie spamuj emotkami
 
 
Rouch 



Pomógł: 1 raz
Dołączył: 02 Sty 2012
Posty: 21
Wysłany: Czw 28 Mar, 2013 15:03
Czytaj konfigurację, no i widać, że nie przejrzałeś całego tematu.
 
 
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