[VX] [Pomoc] Depozyt - Wersja do druku
Ultima Forum
[VX] [Pomoc] Depozyt - Wersja do druku

+- Ultima Forum (https://forum.ultimateam.pl)
+-- Dział: RPG Maker (/Forum-RPG-Maker)
+--- Dział: Wsparcie (/Forum-Wsparcie)
+--- Wątek: [VX] [Pomoc] Depozyt (/Thread-VX-Pomoc-Depozyt)



[Pomoc] Depozyt - Laura - 13-06-13 21:58

Witam wszystkich Aktywnych i tych mniej aktywnych forumowiczów.
Mam pytanie czy można zrobić tak by jakaś postać (nie bohater) po dajmy na to rozmowie dodał nam coś do depozytu wykorzystujący ten oto skrypt
http://www.ultimateam.pl/viewtopic.php?t=7148

Jeśli tak to bardzo proszę o szybką odpowiedź, w sumie to nawet jak nie to również o nią proszę

Nie zależnie od odpowiedzi z góry za nie dziękuje


RE: [Pomoc] Depozyt - Ayene - 13-06-13 22:49

Możesz skorzystać z tego:
Kod:
item = $data_items[ID]
$game_system.storage[INDEX].storeItem(item, LICZBA)
gdzie:
ID to id przedmiotu w bazie danych,
INDEX to indeks slotu w depozycie (pierwszy slot to 0, drugi to 1)
LICZBA czyli tyle ile chcesz dodać wybranych przedmiotów

np.:
Kod:
item = $data_items[1]
$game_system.storage[0].storeItem(item,2)
doda do depozytu dwa Potiony w pierwszym slocie.


RE: [Pomoc] Depozyt - Laura - 14-06-13 07:15

Bardzo dziękuje
a i jeszcze jedno da się zrobić tak z pieniędzmi?


RE: [Pomoc] Depozyt - Ayene - 14-06-13 07:27

Kod:
$game_system.stored_gold += 1000



RE: [Pomoc] Depozyt - Laura - 14-06-13 07:31

Jeszcze raz bardzo dziękuje


RE: [Pomoc] Depozyt - Avara - 14-06-13 15:29

To ja dodam jeszcze od siebie:
Kod:
item = $data_items[ID]          # Gdy chcemy dać do depozytu zwykły przedmiot.
item = $data_weapons[ID]        # Gdy (...) broń.
item = $data_armors[ID]         # Gdy (...) zbroję.
Życzę powodzenia przy projekcie :aww:


RE: [Pomoc] Depozyt - Ayene - 15-06-13 00:29

Mhm, dobrze by było wrzucić ten skrypt z informacją, jak dodawać bezpośrednio przedmioty. Można by się pokusić o dodatkowy kod, np. sprawdzający, czy slot nie jest przypadkiem zajęty, tak aby przypadkowo nie podmienić nic graczowi. Proponuję takie rozwiązanie... oczywiście do dyskusji:

Kod:
item = $data_items[ID] # ewentualnie wg sugestii Avary
i = 0
loop do
if !$game_system.storage[i].nil? and
$game_system.storage[i].item.nil?
$game_system.storage[i].storeItem(item, LICZBA)
break
else
i += 1
end; end



RE: [Pomoc] Depozyt - Laura - 15-06-13 07:54

Och to byłoby świetne ale gdzie wkleić te linijki tekstu? na sam koniec skryptu?


RE: [Pomoc] Depozyt - Ayene - 15-06-13 09:20

Nie, ten fragment kodu jest do wklejenia do polecenia Script w zdarzeniu. Trochę długi i tak sobie myślę, że z powodzeniem można dodać kilka wersów na koniec skryptu, by go nieco uszczuplić...

Może tak... poniższy fragment można dodać na koniec skryptu:
Kod:
class Game_System
  def store(item, amount)
    i = 0
    loop do
      if !@storage[i].nil? and @storage[i].item.nil?
       @storage[i].unlock
       @storage[i].storeItem(item, amount)
       break
      else
       i += 1
     end
    end
  end
end

Teraz polecenie dodania przez zdarzenie wygląda tak:
Kod:
item = $data_items[ID] # ewentualnie wg sugestii Avary
$game_system.store(item, LICZBA)



RE: [Pomoc] Depozyt - Laura - 15-06-13 10:40

Wszystko działa :)