Ultima Forum

Pełna wersja: Zaklęcie niewrażliwości
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witam smiles

Chcę zrobić w grze zaklęcie, które zwiększałoby na określoną ilość rund obronę bohatera, a jednocześnie zmniejszało atak. Mam jednak problem, bo o ile zmniejszenie ataku nie jest trudne, to nie znalazłem sposobu na zwiększenie obrony fizycznej i magicznej bohatera. Co prawda jest taka opcja w kondycjach, ale pozwala ona jedynie na zwiększenie obrony procentowo, co jest bez sensu, gdy bohater ma 0 pancerza (nie nosi uzbrojenia). Jeśli ktoś wiedziałby jak zwiększyć obronę punktowo, a nie procentowo, to byłbym wdzięczny za pomoc.
Nie mam RM XP, więc nie mogę sprawdzić czy takowe okienko tam istnieje. Jeżeli tak to powinieneś szukać w tym miejscu, jeżeli nie to szukaj czegoś podobnego.
Spoiler: (Otwórz)
Edit:
Nie ma takiej opcji w XP, ale zaraz próbuję coś wykombinować.

Niestety nie będę mógł pomóc. Za każdym razem, gdy próbuję odpalić test gry wywala mi błąd :c
Spoiler: (Otwórz)
Będziesz musiał odwołać się do zewnętrznych skryptów Ruby, bo jeśli chcesz bezwzględną wartość dla stanów, to jest to jedyna droga.

Po prostu przepisz klasę "RPG State" do "classes.rb", a definicje obiektów do "state.rb". Oto kod klasy na twój przypadek:
Kod:
class RPG::State
attr_reader :id
attr_accessor :name, :animation_id, :hit_rate, :hit_plus, :maxhp_rate, :maxhp_plus, :maxsp_rate, :maxsp_plus, :str_rate, :str_plus, :dex_rate, :dex_plus, :agi_rate, :agi_plus, :int_rate, :int_plus, :atk_rate, :atk_plus, :pdef_rate, :pdef_plus, :mdef_rate, :mdef_plus, :eva
def initialize(id)
@id = id
@name=''
@animation_id = 0
@rating = 5
@hit_rate = 100
@hit_plus = 0
@maxhp_rate = 100
@maxhp_plus = 0
@maxsp_rate = 100
@maxsp_plus = 0
@str_rate = 100
@str_plus = 0
@dex_rate = 100
@dex_plus = 0
@agi_rate = 100
@agi_plus = 0
@int_rate = 100
@int_plus = 0
@atk_rate = 100
@atk_plus = 0
@pdef_rate = 100
@pdef_plus = 0
@mdef_rate = 100
@mdef_plus = 0
@eva = 0
end
end
W pliku "state" po prostu zdefiniuj wszystkie stany. A w Edytorze Skryptów użyj
Kod:
File.expand_path('./')
i "require", aby załadować te 2 pliki do gry.
Bez skryptowania też nie widzę opcji, bo MDEFA i DEFA nie można zwiększyć tak jak innych statów. :ehe: Możesz np. wymusić, żeby gracz podczas walki założył zbroję/akcesoria o wyższym MDEF, ale nie wiem, jak to zadziała w przypadku twojej gry.
Dzięki za odpowiedzi, jeśli chodzi o grzebanie w skryptach, to przy moich umiejętnościach trochę to zajmie. Kilka najbliższych dni mam zajętych, więc pobawię się z tym dopiero w sobotę albo niedzielę. Jeśli będę miał jakieś problemy, to napiszę ci Mateusz SSJ8 prywatną wiadomość.
Przekierowanie