RU 📌 Pinned

Как сделать?

Dark[Ol(U23)leneri] #34 18.04.2010 22:57 6408 comments 2426340 views

Я с компа, тестить буду.

19-ть ENDов это пипец!LISA.qsp

Я кинул, пробуй!!

Oliver,
у вас получилось, что все действия одновременно вылезли, а надо, чтобы при выборе одного действия, появлялись другие, вот)
ладно, я уже разбиваю)
дело в том, что я уже делала что-то подобное, и вот там все работает, вот:

Spoiler
act 'Вы осматриваете товар':
	*p 'В большом красном бутыле плещется зелье Противоядия. Вдруг вас в пути попытаются отравить?
В белом конвертике свернут порошок Удачи. Используете такой, и задуманное получится так, как надо.
'
	delact 'Вы осматриваете товар'
	act 'Вы решаете взять зелье Противоядия.':
		$locName = 'эликсиры'
		$cost = 0
		$curItem = 'Зелье Противоядия'
		dynamic $inv
	end
	act 'Вы решаете взять порошок Удачи.':
		$locName = 'эликсиры'
		$cost = 0
		$curItem = 'Порошок Удачи'
		dynamic $inv
	end
	act 'Вас не устраивает показанное. Вы просите показать что-нибудь еще.':
		*p 'Купец только кивает головой, убирая бутыль с порошком, и раскладывает перед вами три мешочка.
В первом - порошок, помогающий лучше владеть оружием.
Во втором - порошок, делающий вас прытче.
В третьем мешочке - порошок, усиливающий вашу силу духа.
'
		delact 'Вас не устраивает показанное. Вы просите показать что-нибудь еще.'
		delact 'Вы решаете взять зелье Противоядия.'
		delact 'Вы решаете взять порошок Удачи.'
		act 'Вы решаете взять порошок на владение оружием.':
			$locName = 'эликсиры'
			$cost = 0
			$curItem = 'Порошок на Владение оружием'
			dynamic $inv
		end
		act 'Вы решаете взять порошок на ловкость.':
			$locName = 'эликсиры'
			$cost = 0
			$curItem = 'Порошок на Ловкость'
			dynamic $inv
		end
		act 'Вы решаете взять порошок на силу духа.':
			$locName = 'эликсиры'
			$cost = 0
			$curItem = 'Порошок на Силу духа'
			dynamic $inv
		end
		act 'Вас не устраивает показанное. Вы просите показать что-нибудь еще.':
			*p 'Купец хмурится и убирает мешочки с порошком. Он уходит далеко за прилавок и долго роется в мешках, пока не выуживает однин-единственный флакончик, завернутый в шелковый платок. Развернув платок перед вами, он ставит на прилавок зелье. Вы осматриваете флакончик - на полустертой этикетке схематично нарисованы  человечки, корчащиеся в языках пламени. Мощная штука.'
			delact 'Вы решаете взять порошок на владение оружием.'
			delact 'Вы решаете взять порошок на ловкость.'
			delact 'Вы решаете взять порошок на силу духа.'
			delact 'Вас не устраивает показанное. Вы просите показать что-нибудь еще.'
			act 'Хорошо, вы берете этот эликсир. Купец облегченно выдыхает.':
			$locName = 'эликсиры'
			$cost = 0
			$curItem = 'Зелье Огня'
				dynamic $inv
			end
		end
	end
end
act 'Вы решаете не брать вещи, а взять с купца плату за разрешение на торговлю.':
	a = input ('Сколько вы решили требовать с купца?')
		if a < 5 or a = 5:
			благосостояние = благосостояние + a
			*p '
Купец благсклонно отсчитывает вам указанную сумму. Сделка заключена.'
			delact 'Хорошо, вы берете этот эликсир. Купец облегченно выдыхает.'
			delact 'Вы решаете не брать вещи, а взять с купца плату за разрешение на торговлю.'
			delact 'Вы осматриваете товар'
			act 'Покинуть шатер':
				gt 'центр_площадь'
			end
		else
			эликсиры_ушел = true
			*p '
Купец долго смотрит на вас исподлобья, слегка шевеля бровями.
- У меня нет таких денег, - заявляет он. - А даже если б были, то плата непомерно высока. Уж лучше я найду другой город для торговли.'
			delact 'Хорошо, вы берете этот эликсир. Купец облегченно выдыхает.'
			delact 'Вы решаете не брать вещи, а взять с купца плату за разрешение на торговлю.'
			delact 'Вы осматриваете товар'
			act 'Покинуть шатер':
				gt 'центр_площадь'
			end
		end
end

Lisichka:

if $yes = true:

Вы что тут проверяете? $yes строчная переменная, а true числовая. True как определена? -1?
Учтите, что true будет только при $yes=“-1”

Lisichka:

if obj ‘Волшебное молоко’:
act ‘SERYRT’:
end

Вот пустые act-ы. Добейте end-ами, их у вас вроде 4ре.

Oliver, Спасибо за помощь)

PsiH,
Пожалуйста, сам таки был)))

Babai,
true = 1
а $yes я использовала, потому что не хочу плодить одноразовые переменные, а эту я использую для обозначения локаций Х)
представляете, поставила, и все заработало! даже не верится, спасибо огромное!

Белый Шарик #100 30.07.2015 07:08 (10 years ago)

Подскажите, почему зависает при исполнении? Хочу сделать рандомные значения для трех переменных, но так чтобы они не были равны. Или подскажите, как это проще сделать?

first = rand (1,10)
second = rand (1,10)
third = rand (1,10)
If first = second or first = third or second = third : gt $curloc
gt 'Next'

Белый Шарик,
Я, конечно, мало в чем разбираюсь, но мне кажется, что слишком много “=“ в одной строчке. Я бы сделал более топорно, но это точно работало бы:

if first = second:
gt $curloc
end
if first = third:
gt $curloc
end
if third = second:
gt $curloc
end
gt 'Next'
Белый Шарик #100 30.07.2015 08:59 (10 years ago)

Ок. Благодарю. Видимо с “OR” намудрил что-то… Или неправильно понимаю его функцию.

рандомные значения для трех переменных, но так чтобы они не были равны

См. пример: Выбор случайных вариантов - тянем карты из колоды

! Локация "Тянуть карту"

! Запрашиваем длину массива
_length = ARRSIZE('random')
! Если вариантов уже нет, возвращаем -1
IF _length = 0:
    RESULT = -1
    EXIT
END

! Выбираем из массива случайный элемент, соотв. длине массива
_variant = RAND(0, _length-1)
! Запоминаем результат
RESULT = random[_variant]

! Удаляем отработанный элемент
KILLVAR 'random', _variant
! Локация использования случайного выбора

random[0]=1
random[1]=2
random[2]=3
random[3]=4
random[4]=5
random[5]=6
random[6]=7
random[7]=8
random[8]=9
random[9]=10


first = FUNC('Тянуть карту')
second = FUNC('Тянуть карту')
third = FUNC('Тянуть карту')

Белый Шарик,
твой код верен. Ошибка в каком-то другом месте.

Белый Шарик:

Видимо с “OR” намудрил что-то…

Ничего не намудрил, всё правильно. Но по-моему, лучше так написать:

:met
first = rand (1,10) 
second = rand (1,10) 
third = rand (1,10) 
If first = second or first = third or second = third : jump 'met' 
gt 'Next'
Белый Шарик #100 30.07.2015 12:00 (10 years ago)

Nex,
Спасибо, поизучаю.

snail,
Пффф…. Странно. Теперь работает. Черт знает что… То ли из-за курлока что-то парило, сейчас сделал через метку.

Подскажите пожалуйста как создать и привязать ко времени игрового персонажа? То есть привязать такие показатели как голод, сон, здоровье по теме: Календарь по методу счёта Юлианских дней. И восполнение этих показателей тем или иным способом.

Log in or Register to post comments.