aron155

Liczba postów: 70
Dołączył: 12-08-13
Pomógł: 0

|
RE: Skrypt z drzewkiem umiejętności
W końcu miałem czas na zmianę i sprawdzenie... Dzięki, zmiana na wartość 1 pomogła. Nie wiem tylko skąd wziąć ID umiejętności :(
# "SkillObject" - Is the unique name for that skill object. #
# reqlvl - Is the actor needed level for this object to be enabled. #
# treepts - Are the required points spended in the tree for this object #
# to be enabled. #
# "dad" - "mom" - Parents skill Object name. Skill objects that conditions #
# this skill object. Use nil for no dependance. #
# maxlvl - Is the maximum skill points spendable on this skill object. #
# childreqlvl - Is the necessary ammount of points in this skill object to #
# allow spending points in skills linked to this one. #
# idlvl... - Are the Skill IDs for each level of that skill. #
# -----------------------------------------------------------------------------#
# "SkillObject" => [reqlvl, treepts, "dad", "mom", maxlvl, childreqlvl, idlvl1, idlvl2,...],
"MF_1" => [1, 0, nil, nil, 100, 1, 1, 2, 3, 4, 5],
"MF_2" => [5, 0, nil, nil, 3, 1, 6, 7, 8],
"MF_3" => [10, 0, "MF_1", "MF_2", 5, 0, 9, 10, 11, 12, 13],
"MF_4" => [1, 0, nil, nil, 5, 5, 14, 15, 16, 17, 18],
"MF_5" => [10, 0, "MF_4", nil, 5, 5, 19, 20, 21, 22, 23],
"WA_1" => [1, 0, nil, nil, 3, 3, 24, 25, 26],
"WA_2" => [1, 0, "WA_1", nil, 5, 0, 27, 28, 29, 30, 31],
Dobrze rozumiem że są to ostatnie liczby w deklaracji umiejętności? W sensie, że umiejętność MF_1 ma ID z przedziału 1-5 w zależności od poziomu, a umiejętność MF_5 od 19 do 23?
Kolejnym problemem jest prędkość opadania zapadek w zamku. Wartość umiejętności została wyeksportowana do zmiennej 0001. W skrypcie na otwieranie zamków można ustawić czas przez jaki zapadka będzie w górze. Chcę, aby był on wynikiem mnożenia dwóch zmiennych - 0001 (poziom umiejętności) i 0002 (poziom trudności zamka). Jak mogę to zrobić?
Fragment z początku skryptu (deklaracja czasu):
# default amount of time stick waits in up position for player to press ENTER
# It is in frames (60 frames = 1 second)
WAIT_TIME = 1
# ID of the variable to add or subtract time from the wait period. This can
# be used to make some locks harder or easier - the value of the variable
# will be added to the WAIT_TIME.
WAIT_MOD_VARIABLE_ID = 1
Fragment skryptu z czasem:
wait_time = WAIT_TIME
wait_time += $game_variables[WAIT_MOD_VARIABLE_ID] unless WAIT_MOD_VARIABLE_ID < 1
wait_time = 1 if wait_time < 1
if @animation > 10 && @animation <= 25
@lockpick.y += 1 if @animation <= 21
if @switches[@lockpick_index - 1].include?("down")
@sticks[@lockpick_index - 1].y -= 1
end
@animation += 1
elsif @animation > 25 && @sekunde == 0
@wait_for_press = true
elsif @sekunde >= wait_time
@animation = 0
@sekunde = 0
@press = false
@wait_for_press = false
return_to_normal
end
else
@press = false
Przypomniało mi się, że w zdarzeniu aktywującym otwieranie zamka znajduje się polecenie przypisania zadanej wartości do zmiennej Lock Speed Mod o ID 0001. Problem w tym, że w skrypcie nie znalazłem zmiennej o tej nazwie ani ID. Czy może być tak, że zmienna Lock Speed Mod jest zmienną lokalną a w skrypcie przyjmuje inną nazwę? Tak jak często bywa w funkcjach? (Wewnątrz funkcji działanie wykonywane jest na jej własnych zmiennych, które mogą mieć tą samą nazwę jak zmienne poza funkcją).
|
|