Pomoc z Thieffer's Quest log
Aktualny czas: 20-06-25, 18:07 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[XP] Pomoc z Thieffer's Quest log
Ann120 Offline
*


Liczba postów: 57
Dołączył: 24-10-14

Pomógł: 2



Post: #1
Pomoc z Thieffer's Quest log

Dzień dobry czy ktos mógłby napisać mi jak zrobić zadanie w Thieffer's Quest log.
07-01-15 22:51
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Yoroiookami Offline
*


Liczba postów: 985
Dołączył: 01-05-13

Pomógł: 137



Post: #2
RE: Pomoc z Thieffer's Quest log

Przecież masz napisane w skrypcie. :co:
Cytat:# $quest= ["nazwa", poziom, "grafika", "treść"]
# gdzie zamiast:
# $quest --> możesz wpisać co zechcesz (nie będzie wyświetlane)
# "nazwa" --> nazwa zadania (będzie wyświetlana)
# poziom --> liczba od 1 do 5 (poziom trudności)
# "grafika" --> nazwa pliku zawierającego obrazek o wymiarach 400px na 100px (obrazek przedstawiający scenkę z zadania)
# "treść" --> treść zadania
# Konfiguracja:

np. $quest1= ["Zbieranie Grzybów", 1, "obrazek.jpg", "Musisz zebrać 10 grzybków"]

[Obrazek: mt4dzY7.png]
[Obrazek: k5KQGOe.png]
(Ten post był ostatnio modyfikowany: 08-01-15 02:02 przez Yoroiookami.)
08-01-15 02:01
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Mateusz SSJ8 Offline
*


Liczba postów: 511
Dołączył: 10-05-13

Pomógł: 40



Post: #3
RE: Pomoc z Thieffer's Quest log

Zamiast używać tego skryptu, możesz napisać własny. Przykładem jest mój questlog w "Miasteczkonowoczesne 4-2"

Najpierw zdefiniuj klasę dla pojedyńczego zadania, np.
class RPG::Quest
attr_reader :collect_items, :kill_monsters,:custom_item_rewards,:pernament_item_rewards,:texts,
:control_points,:talks_to_do,:actions
attr_accessor :id, :name, :chain_name, :icon_name, :chain_quest_number, :team_xpl, :xp_reward,
:gold_reward,:custom_item_rewards_can_choose,:chapter,:repeatable,:report_to
def initialize
  @id = 0
  @name = ""
  @chain_name = ""
  @icon_name = ""
  @chain_quest_number = 0
  @collect_items = {}
  @kill_monsters = {}
  @team_xpl = 0
  @custom_item_rewards = {}
  @custom_item_rewards_can_choose = 1
  @pernament_item_rewards = {}
  @xp_reward = 0
  @gold_reward = 0
  @chapter = 0
  @repeatable = false
  @texts = []
  @control_points = {}
  @talks_to_do = {}
  @actions = {}
end
#Działaj
def add_action(kind, basic, skill, item, number)
key = [kind, basic, skill, item]
  @actions[key] = number
end
def actions_to_do
  return @actions
end
#/Działaj
#Porozmawiaj
def add_talk(map, event, number)
key = [map, event]
  @talks_to_do[key] = number
end
def talks
return @talks_to_do
end
#Porozmawiaj
#Odwiedź miejsca
def add_control_point(map, x, y, number)
  new_checkpoint = [map, x, y,]
  @control_points[new_checkpoint] = number
end
#Odwiedź miejsca
#Zbierz przedmioty
def add_item_to_collect(item_kind, item_id, item_number, quest_only=true)
key = [item_kind, item_id]
  @collect_items[key] = [item_number, quest_only]
end
#/Zbierz przedmioty
#Zabij potwory
def add_monster_to_kill(monster_id, monster_number)
  @kill_monsters[monster_id] = monster_number
end
#/Zabij potwory
#Wybór nagrody
def add_custom_item_reward(item_kind, item_id, item_number)
  new_item = [item_kind, item_id]
  @custom_item_rewards[new_item] = item_number
end
def add_pernament_item_reward(item_kind, item_id, item_number)
  new_item = [item_kind, item_id]
  @pernament_item_rewards[new_item] = item_number
end
#/Wybór nagrody
def add_text(txt)
@texts.push(txt)
end
end
Tutaj "@texts" zawiera linijki opisu zadania.

Następnie użyj zmiennej globalnej mającej klasę "Array" (najpierw lepiej zdefiniuj tę zmienną) do przechowywania wszystkich zadań obecnych w grze. Dla przykładowego zadania
id = 30
  $data_quests[id] = RPG::Quest.new
  $data_quests[id].id = id
  $data_quests[id].name = "Sailor Moon Forever"
  $data_quests[id].chain_name = "GREEN LEVITHAN"
  $data_quests[id].icon_name = "quest_main"
  $data_quests[id].chain_quest_number = 1
  $data_quests[id].add_item_to_collect(0, 68, 1, false)
  $data_quests[id].add_item_to_collect(0, 92, 1, false)
  $data_quests[id].add_item_to_collect(0, 93, 1, false)
  $data_quests[id].add_item_to_collect(0, 94, 1, false)

  #$data_quests[id].add_monster_to_kill(67, 12)
  #$data_quests[id].add_monster_to_kill(68, 18)
  #$data_quests[id].add_monster_to_kill(54, 1)
  
  #$data_quests[id].add_control_point(1, 9, 39, 1)
  #$data_quests[id].add_control_point(24, 9, 13, 1)
  #$data_quests[id].add_talk(1, 9, 1)
  
  $data_quests[id].team_xpl = 24
  #$data_quests[id].add_custom_item_reward(0, 1, 5)
  #$data_quests[id].add_custom_item_reward(0, 2, 5)
  #$data_quests[id].add_custom_item_reward(0, 4, 5)
  #$data_quests[id].add_custom_item_reward(0, 5, 5)
  #$data_quests[id].add_custom_item_reward(0, 10, 5)
  
  $data_quests[id].custom_item_rewards_can_choose = 0
  $data_quests[id].add_pernament_item_reward(0, 76, 5)
  $data_quests[id].xp_reward = 1000
  $data_quests[id].gold_reward = 0
  $data_quests[id].chapter = 6
  $data_quests[id].repeatable = false
  $data_quests[id].report_to = "Wejście do Sailor Moon Forever"
  $data_quests[id].add_text("Iwan uciekł ze Spoko-i-nie, licząc, że Behemoth")
  $data_quests[id].add_text("rozniesie Amy i spółkę. Ale drużynie udało się")
  $data_quests[id].add_text("pokonać potwora. Teraz pozostaje tylko zebrać")
  $data_quests[id].add_text("wszystkie orby i uderzyć na Sailor Moon Forever,")
  $data_quests[id].add_text("zanim Heurow, Iwan i Bladymir dotrą tam pierwsi.")
  $data_quests[id].add_text("")
  $data_quests[id].add_text("Ruiny Sailor Moon Forever leżą między Nowoczesnym")
  $data_quests[id].add_text("i Winter Slum City. Tam musisz się udać. Tylko nie")
  $data_quests[id].add_text("pomyl drogi z drogą na Polanę Białych Raichu czy do")
  $data_quests[id].add_text("jaskini, w której był Deep Blue Kyuubi.")
  $data_quests[id].add_text("")
  $data_quests[id].add_text("ZNAJDŹ CZERWONY ORB")
  $data_quests[id].add_text("ZNAJDŹ ZIELONY ORB")
  $data_quests[id].add_text("ZNAJDŹ NIEBIESKI ORB")
  $data_quests[id].add_text("ZNAJDŹ FIOLETOWY ORB")
, który pasuje do kodu podanego wyżej.

Gdy to wszystko jest już zrobione, musisz jeszcze upewnićsię, że informacje będą aktualizowane za każdym razem, kiedy trzeba będzie nanieść nowsze dane. Dobrze sprawdzą się obiekty gry dla questów. W końcu zebranie 10 grzybów to nie wszystkie zadania, jakie mogą się trafić.

UWAGA!!! Oba kody służą tu tylko dla przykładu, więc nie pozwalam na ich bezpośrednie użycie w grze.

Nienawidzony i nienawidzący. Przez nienawiść tego drugiego obaj będą martwi.
(Ten post był ostatnio modyfikowany: 08-01-15 11:36 przez Mateusz SSJ8.)
08-01-15 11:34
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #4
RE: Pomoc z Thieffer's Quest log

Odpowiedzi są we wcześniejszym temacie... http://forum.ultimateam.pl/Thread-XP-Pom...s-QuestLog

[Obrazek: aye_furniture_pres.png]
08-01-15 19:58
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Wątek zamknięty 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości

Kontakt | Ultima Forum | Wróć do góry | Wróć do forów | Wersja bez grafiki | RSS
Powered By MyBB. © 2013 MyBB Group. All Rights Reserved.
Skórka by Ayene.