Я пытаюсь создать систему выравнивания в QB64 Txt Based Adventure
То, что я хочу, случается всякий раз, когда expertotal%
равно levelup%
, Я хочу добавить 1
в level%
, я пробовал level% + 1
, но я получаю синтаксическую ошибку.
Тогда всякий раз level%
идет вверх, я хочу, чтобы умножить levelup%
а также experience%
умножить на 1.25
,
Вот мой код:
do
sub lvl
level% = 1
levelup% = 50
experience% = 5
ExperTotal% = 0
if Expertotal% = levelup% then 'something here to add 1 to level%
while Expertotal% = levelup%
' multiply them both by 1.25
wend
loop
end sub
1 ответ
Переписав ваш код несколько я пришел к этому:
REM What I want to happen is whenever expertotal% is equal to levelup%,
REM I want to add 1 to level%.
REM I've tried level% + 1, but I get a syntax error.
REM Then whenever level% goes up,
REM I want to multiply levelup% and experience% to be multiplied by 1.25.
level% = 1
levelup% = 50
experience% = 48
ExperTotal% = 48
DO
COLOR 15
PRINT "Increase exp(y/n)";: INPUT x$
IF LCASE$(x$) = "y" THEN
GOSUB lvl
COLOR 14
PRINT "level="; level%
PRINT "experience="; experience%
ELSE
EXIT DO
END IF
LOOP
COLOR 7
END
lvl:
' increase experience total
ExperTotal% = ExperTotal% + 1
' compare experience to levelup
IF ExperTotal% = levelup% THEN
' add 1 to level when experience equal
level% = level% + 1%
' multiply levelup and experience
levelup% = levelup% * 1.25
experience% = experience% * 1.25
COLOR 12
PRINT "level increased.."
END IF
RETURN
END