Как сделать?
…
KlimKlim,
код для отображения характеристик в окне доп. описания:
! Очищаем окно доп. описания
CLR
! Выводим характеристики
PL 'Здоровье: <<здоровье>>%'
PL 'Кредиты: <<кредиты>>'
Каждый раз, когда потребуется обновить характеристики в окне доп. описания, вызываем этот код. Либо “напрямую”, либо создаётся отдельная локация и вызвается через GOSUB.
Nex,
Спасибо! Теперь нужно сделать так: 1. чтобы игрок один раз спрыгнул и у него один раз отнялось здоровье - 20% например. 2. чтобы у него при клацанье кнопки отнималось здоровье до 0 и он умер. Также с кредитами как сделать ? спасибо заранее.
здоровье = здоровье - 15
gt $CURLOC
здоровье = здоровье + 15
gt $CURLOC
кредиты = кредиты - 100
gt $CURLOC
KlimKlim,
здоровье = здоровье - 20
IF здоровье <= 0:
GOTO 'смерть'
END
GOTO $CURLOC
Nex,
Респект тебе :)
здоровье = здоровье + 20
IF здоровье = 100:
PL 'Вы здоровы. '
END
GOTO $CURLOC
Дальше продолжает набирать здоровье
кредиты = кредиты - 100
IF кредиты = 0:
PL 'Деньги закончились. '
END
gt $CURLOC
Дальше продолжают убывать кредиты.
Или действие можно только закончить оператором “GOTO” ?
KlimKlim,
! увеличиваем здоровье
здоровье = здоровье + 20
! не позволяем здоровью превысить максимум
IF здоровье > 100:
здоровье = 100
END
! непонятно зачем, сообщаем игроку, что он здоров
IF здоровье = 100:
PL 'Вы здоровы. '
END
GOTO $CURLOC
! совершаем покупку только в том случае, если кредитов достаточно
IF кредиты >= 100:
! уменьшаем количество кредитов
кредиты = кредиты - 100
! следим, чтобы кредиты не ушли в минус
IF кредиты < 0:
кредиты = 0
END
ELSE
PL 'У вас недостаточно кредитов.'
END
IF кредиты = 0:
PL 'Деньги закончились. '
END
gt $CURLOC
Я конечно полный нуб в программировании, у меня не получается сделать так чтобы при переходе в другую локацию отнимались деньги или здоровье. Например я перешел из a локации в b локацию, и при этом потерял 12 кредитов, типо кто то украл их по дороге.
Записал так в действии при переходе:
кредиты = кредиты - 12
IF кредиты < 488:
кредиты = 488
END
GOTO "loc_2"
KlimKlim,
кредиты = кредиты - 12
IF кредиты < 0:
кредиты = 0
END
GOTO "loc_2"
Разобрался. Нужно вывести значения или в отдельную локацию, либо приписывать в другой локации код:
! Очищаем окно доп. описания
CLR
! Выводим характеристики
PL 'Здоровье: <<здоровье>>%'
PL 'Кредиты: <<кредиты>>'
KlimKlim,
я об этом тебе говорил с самого начала.
Nex:
Каждый раз, когда потребуется обновить характеристики в окне доп. описания, вызываем этот код.
Подскажите! Не понимаю, как в с помощью библотечки добавлять несколько предметов (не по одному). Примера там нету (только +1 или выровнять до 10) деньги-то могут прибавляться по-разному на одной локации +11, на другой +7 и тд.
Podkovally, с помощью какой библиотечки?
Здравствуйте!
Есть небольшая проблема: надобно, скажем, показать здоровье персонажа в процентах, в дополнительном окне пользователя. Примерно так:
PL 'Здоровье: <<hp/maxhp*100>>%'
Однако ж, стоит мне изменить текущий уровень здоровья (”hp”, максимальный уровень - “maxhp”), как значение в игре меняется со “100%” на “0%”. Что не так?
P.S. Если что, код указан в локации-обработчике перехода. Хотя не думаю, что проблема в этом.
Надо немного поменять формулу
PL 'Здоровье: <<hp*100/maxhp>>%'
проблема возникает из-за того, что qsp не поддерживает дробных чисел
werewolf,
Спасибо!